Adding include guards
Started adding unit tests