Working on shader support. Just finished shader compilation, need to add compile error checking.

- Added resource_exception for use when a resource fails to load.
- Added file_string, for loading a text file into an in-memory string.
- Added message_exception and made fatal_construction_exception and resource_exception
  derive from it.