added comments and cleaned up file tree