dragon: first cut at a floppy driver

Completely untested at this point
dragon: initial fdc work

Now correctly loads the superblock off disk. Something is astray once we
try and seek off track 0 however
platform-dragon: floppy driver updates

It now sort of works but something isn't right in the track handling logic
so that's partly commented out. We issue excess seeks as a result.
putdigit: microoptimisations

The compiler can't assume much about the variables after the call to put
the character so do the operations the other way around
.