all functionality is complete for project. just need to clean it up if time permits, and add more comments. planned major refactoring if time permits