have not updated this in a while, got a lot figured out, added, removed, and reorganized the entire thing.