This is an almost complete implementation, it does not support alternations or collating elements and it is restricted to the ASCII character set