Some porting items. The typecasts are due to void* having an undefined size
(on some compilerrs).   error C2036: 'void *' : unknown size

Simply typecast to a char for size 1
Merge pull request #209 from claudioandre/9fd47ae154ac6a2fa99a5994f3dda8a5bafdf023

Discussion about common code.
Merge branch 'bleeding-jumbo' of git://github.com/magnumripper/JohnTheRipper into bleeding-jumbo