Test inserting and constructing from input iterators. Check thrown exception types properly. Return by reference from 'get_key' so that the keys aren't copied.