fix twofish tests for endianness, make the test case names more descriptive
General refactoring, and read strings as UTF-8 (specs say to).

Refactored the error handling -- should be more robust at reporting
errors instead of quietly dying in setTimeout()/WebWorker land never to
be heard from again.

Restructured a bit, simplified some redundant code.  I've decided to go
with underscore-prefixed private members after all -- I'm not sure why I
took them out earlier.