Clean up CoreException

- Remove default constructor
- Replace virtual functions returning C strings with functions returning const std::string refs