Provide functions for C++11 range-based for loops. Document C++11 interaction

This is a pull request to address at least in parts issue 239:
  https://code.google.com/p/dealii/issues/detail?id=239
It creates new functions in Triangulation, DoFHandler and hp::DoFHandler that return objects that can be used in range-based for loops. The IteratorRange class supports this.

The pull request also introduced a new documentation module C++11 that documents how we interact with C++11 and what features we provide in support of this.
Good point. I'm deriving from std::iterator<forward_iterator_tag> now. I'm now 100% sure that it is safe to make it a bidirectional iterator. Let me think about it.