Adenovirus: a blueprint for non-viral gene delivery.