Added generated documentation for the library, added abstract camera class