cleaned up properties and changed to c++ 11 syntax