Minor improvements to aged_containers (RIPD-363)

- Added unit tests for element erase
- Added unit tests for range erase
- added unit tests for touch (const_iterator)
- Un-inlined operator== for unordered containers
- Fixed minor problems with ordered_container erase()
- Made ordered_container...
  - erase (reverse_iterator pos) not compile
  - erase (reverse_iterator first, reverse_iterator last) not compile
  - touch (reverse iterator pos) not compile
- Verified that ordered container...
  - insert() already rejects reverse_iterator
  - emplace_hint() already rejects reverse_iterator
Do we know that this construct works in Visual Studio?  The answer is "yes" - see http://msdn.microsoft.com/en-us/library/hh567368.aspx#corelanguagetable, and look for "Trailing return types".