Enable compilation on Clang

This change simplifies the Makefile, as the requirements of the makefile are very minimal. It also disables lines that fail on posix systems due to -Werror (unused member variable)