Change basic_fragment and basic_raii_fragment for better structure

- iterators' providers has been moved to basic_fragment
- removed unnesessary basic_raii_fragment::real_data_
- removed ugly "mutable" attribute which is not needed
+ fixed namespace detail closed brace