Parser Fix

Fixed a bug in the way the parser parses simple case mappings: The indices on each line in the UnicodeData.txt file from which these values were collected was off by one, leading to incorrect results.
Build Update

Updated the unicode.mk file to only build parts of the library which have been updated since the addition of the UCD parser (and the corresponding overhaul of the CodePointInfo structure and related enumerations/helper classes).
CaseConverter

Added the CaseConverter class, which converts Unicode strings to certain casings, as well as performing case folding.

Can perform conversions based on a specific locale, or default to the current locale.

Can perform either simple or full case mappings/foldings.

The ToTitle method is not yet implemented.

The Fold method is not completely implemented -- in order to handle the edge case of strings containing any character with U+0345 COMBINING GREEK YPOGEGRAMMENI in its canonical decomposition, the Normalizer class will have to be updated/completed.
MakeReverseIterator

Broke the make_reverse_iterator function template from conditions.cpp out into its own header (unicode/makereverseiterator.hpp) and renamed it to MakeReverseIterator.
Boundaries

Took the IsBreak method off the CodePoint class.

Implemented IsGraphemeClusterBoundary and IsWordBoundary according to Unicode Standard Annex #29 (Unicode Text Segmentation).

Untested as of now (but compiles).
Normalizer

Updated and cleaned up the Normalizer code, bringing it back to where it was previously in terms of functionality, but now leveraging the revamped CodePointInfo structure and with cleaner code all around.
Case Folding Update

Completed the implementation of CaseConverter::Fold by taking all strings which contain U+0345 COMBINING GREEK YPOGEGRAMMENI to NFD before case folding.
Remove NormalForm Enumeration

Removed the NormalForm enumeration, which is no longer used.
Normalizer::ToNFC

Implemented Normalizer::ToNFC.  The code is not the prettiest, will consider refactoring.

Tweaked the documentation for the Normalizer class.
Remove iterator.hpp

Removed unicode/iterator.hpp.  This file served no purpose, and was committed for unknown reasons.
Remove Grapheme

Removed the Grapheme class.  It -- at least as currently implemented -- no longer seems useful.
Makefile Update

src/data/data.cpp now depends on the UCD folder.
Vector Utilities

Added function templates to extract a begin/end iterator of pointer type from a std::vector.
CodePoint Constructor

Added a proper constexpr constructor to the CodePoint class, which simply zeroes it.
Error Documentation

Updated the documentation for the Error class so that it sounded more natural/used terminology more consistently.
Encoding Update/Overhaul

Updated and overhauled the encoding utilities.

UTF-32 was removed entirely (for now).