Improved portability

Platform specific code that used to be in Application.c now is hidden
behind the interface defined
in Platform.h, implementations are in separate files (as in
AudioSystem).