added header guards
added custom lib files
refactored sketch