code_location.h: A class that represents a code location.
thrower.h: An RAII class that throws on destruction.
not_implemented_error.h: An exception noting that a functionality is not implemented.
thrower.h: Added a useful THROW macro.
thrower.test.cc: Added unit tests for THROW macro.
optional.h: A type to optionally hold a value.