Library N3642, User-defined Literals for Standard Library Types

Changes relative to the proposal:

 - Re-ordered the `basic_string` literals so they are listed in the
order `char`, `char16_t`, `char32_t` and `wchar_t`. This matches the other
functions in Clause 21.
 - Changed `const char *str` to `const char* str` for consistency with
asterisk placement in `basic_string` itself.
 - Changed `operator""` to `operator ""` for consistency with core wording.
 - Added whitespace to duration literal declarations so they are aligned
 - Changed section title to "Suffixes for duration literals" instead of
"Suffix for duration literals"
 - Use `string`, `u16string` etc. typedefs for `basic_string`