Changes to Makefile

Makefile cleanup:
* mkdir use -p so it doesn't produce an error if the destination directory already exists
* System architecture determined using uname rather than hardcoded