make exceptions inherit from std::exception