Added include guards
Removed compiler warnings
Added makefile
Added main file