*added pure virtual base class for databases
*string_id now uses a pointer to the base class allowing to change the databases at runtime without the CMake option
*moved header file hash.hpp into main directory
*moved hash_type out of detail namespace
*adopted changes in includes
*removed all detail headers
*moved database implementations out of detail namespace
*added noexcept for lookup
*documented databases
*made thread_safe_database an adapter
*changed typedef database to default_database and adopted changes
*made final changes, mainly documentation
Finish Feature-Custom-Databases
*changed implementation of map_database to more efficient hash table
*changed signature of insert to take the length of the string
*added constructor for string_id taking the length of the string
*updated documentation and README
Finish Feature-Specialized-Database
*added getter for database of string_id
*added constructor that will create a string with a given prefix
*added prefix string to insert method of database
*implemented map_database::node_list::node constructor to first copy the prefix to the location
*added generator.hpp and generator.cpp
*added various generators for string_ids
*fixed bug in string_id, length for insert includes the length of prefix
*added new string_info type to minimize number of constructors of string_id
*added insert_status enumeration to basic_database returned from insert to get information whether or not the string already existed
*added constructors for string_id setting this status as output parameter
*added generation_error_handler and restructured exception hierachy
*implemented call of generation_error_handler in generation classes to avoid double generated string_ids
*internal changes in generation classes
*adopted documentation
*changed implementation of default_generation_error_handler from using == to >= (safer).
Finish Feature-Id-Generation
*simplified implementation of database
*fixed include error in string_id.hpp
*fixed length = 0 error in to_string in generator.cpp
*optimized prefix insertion via new virtual method insert_prefix in basic_database
*removed requirement to have null-terminated strings even when length is given
*removed null-termination of strings in generators
*internal changes in database implementation, again some cleanup
*changed base class of error to std::exception (instead of std::logic_error)
*lazy formatting of exception message, in what() instead of constructor
*decreased number of includes
*moved basic_database interface to own header file
Finish Feature-Various-Tweaks
*updated changelog, readme and example
*added version numbering macros
*added missing copyright in main.cpp