more todo
include iostream to get cerr
include string to get string
Move to std::shared_ptr from boost::shared_ptr

And add types inside drawable draw loop for clarity