C++11 memory safety features

Use shared_ptr in scene vectors, refactor some code to be more like C++11.
C++11 features for Camera