Bugfixes, make tests more rigerous.
Refactoring

Added private typedef static_table::impl -> static_table_impl
Removed macro in static_table::table_t::index_of(), replaced with a inline
	constexpr function in static_table_impl
Changed name of static_table to static_map
Branched off new class static_table from static_map
	Think of static_table as a specialization for cases where keymap is
	the identity function over unsigned integers.
Simplified static_table for above assumptions, removed keymap parameter
Replaced all references to table_t in static_map with map_t
Changed name of static_map::table to static_map::map
Added new tests to static_table_test.cpp
Added documentation