Instead of using macros to select the alternative inserts, give them different names and call them explicitly from the container class.

svn path=/sandbox-branches/unordered-refactor/boost/unordered_set.hpp; revision=41821
Remove all macro use from hash_table, moving it out of hash_table_impl.hpp (which is included twice, once for equivalent keys, once for unique keys) to hash_table.hpp

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41825
Make the allocators templated rather than macro based.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41826
Hide the macro implemented hash_table_data behind an mpl if statement so that
the other classes don't need the whole data class as a template parameter.


svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41827
Remove some of the alternative implementations. This makes things a bit less efficient, but it's probably okay in most cases.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41886
Got a couple of assertions the wrong way round.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41887
Move everything concerning nodes that is dependent on the node's structure into node_base.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41890
Pull 'bucket' out HASH_TABLE_DATA in hash_table_impl.hpp into hash_table.hpp

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41891
Rename the two different node_base classes so that they can coexist.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41892
Pull the two different node_base classes out of HASH_TABLE_DATA.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41894
Use a template parameter for hash_table_data instead of a macro.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41897
Move hash_table_data into hash_table.hpp

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41900
Only need a single templates 'hash_types' class.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41902
No need for hash_types to know about hash_table_data.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=41903
Merge in changes from hash trunk. Most are in response to the review.

svn path=/sandbox-branches/unordered-refactor/libs/unordered/; revision=42111
Merge in changes.

svn path=/sandbox-branches/unordered-refactor/boost/unordered/; revision=42180