src/dfinstancelinux.cpp: checksum: readAll on Qt4

Less efficient, but QCryptographicHash doesn't support passing in
QIODevices on Qt4. Fixes #121.
Merge pull request #124 from Hello71/qt4hash

src/dfinstancelinux.cpp: checksum: readAll on Qt4
src/dfinstanceosx.mm: checksum: readAll on Qt4

Less efficient, but QCryptographicHash doesn't support passing in
QIODevices on Qt4.
Merge pull request #125 from Hello71/qt4hash

src/dfinstanceosx.mm: checksum: readAll on Qt4
Silence misc. compiler warnings, add type safety
remove typo preventing osx string writes
Merge pull request #126 from Hello71/warnings

Silence misc. compiler warnings, add type safety
rename SIZE type name from #126

- SIZE is already defined in windef.h
fixes #118

- hacking attributes/skills/traits could case an edge case when
calculating roles. basically now it will try to perform the same role
calculations, but if there's a failure it will fall back to another
method. a little clunky, but this should be a very rare scenario.