lots of optimizing, added shift clicking and some titles to the gui