Cleaned up a bit, added compiler options