Did some more clean up, ran a profiler, and tried to optimize the
functions that ran the most and took up the most CPU time.