working for the most part now, working on code cleanup and small things