Refactor string functions, fix many defects.

Is it worth just using ola::strings::ToHex? Either that or prepending ola:: matches the style of the rest of the code.