Fix flashing from Mac and Linux (and other improvements)

Hey, this is a rather large pull request but in general it's improvements I hope are uncontroversial. Highlights:

* Flashing from Finder in OS X now works
* Flashing using 'cp' to a mounted drive from Linux now works
* Flashing from Linux file browsers works, too (tested in Thunar)
* Added structs for directory entries and the boot sector for simpler debugging
* Added lots of logging for easier debugging (for future improvements)
* Clear up the licensing situation (described in README)