organized imports and chaged types
added comments and added some NULL checks
added Doxyfile and added doc folder to gitignore
cleaned up some imports