Add support for inserting by sequence and `const char *`.

All of the insert functions now have a variation taking a `pair`
of iterators as the first component of the insert pair, with the
second component still being the `mapped_type`.

Additionally, in the case where `key_type` is `char`, there are
variations of `insert()` and `find()` that will construct a
`std::string` so `begin()` and `end()` can be used. This is
done through the use of `std::enable_if` so the functions
will only be present when the `key_type` is `char`.