Refactored camera into it's own class. New base class for all objects as to avoid singleton pointers to VideoDriver, etc.