Refactor use of byte arrays
Previously, byte arrays were implemented as string with values from 0 to 255 inclusive. Some runtimes such as Node and modern browsers have native array implementations. These should be faster.
This commit changes changes WebODF to use the native arrays. Since byte arrays differ across runtimes, they are now abstracted by the Runtime.