* breakout the component types into a scoped enum
tested that things are the same as they were before
* fix missed rename
* fix brick-by-brick name to be crafting
because that's what it is
* ASCIIToUTF16: output replacement character instead of failing assert
* Add GeneralUtils::_NextUTF8Char
* Implement GeneralUtils::UTF8ToUTF16
* use string_view everywhere
* use string_view::front instead of begin
* Add PushUTF16CodePoint