Ensure no unaligned reads or writes occur

This patch deals with alignment issues when using non-x86 platforms. This patch allows Tny to compile and run correctly when using emscripten. Prior, alignment issues in emscripten would result in corrupt data from Tny. The largest change I made, other than pointer casting, was to use memcpy instead of direct assignment if the platform is not little endian in the Tny_swap* functions.

I've tested the code against several of my own code bases and the tests provided in Tny. All tests passed on Mac OS X 10.9, Apple Clang 5.0.0.