insert/push_back/push_front range extension

Add range-based non-member non-friend insert extension, push_back/push_front utilities that build upon it, and RANGE_RETURNS utility macro.

Closes #4 .
The biggest win of Boost.Range v2's `push_back` is the ability to `push_back` a `Range`. Since the STL containers don't offer (yet) `push_front`/`push_back` for ranges, I think these extensions are worth having.

Of course, adding a non-member `push_back`/`push_front` that take a container and a value would increase interface consistency so it makes sense to offer them too.