Converted all shared_ptr declarations

All shared_ptr declarations (that have raw pointers passed into them)
have now been converted over to use make_shared.
Crude bmp loader implementation