Fixes bug where vector would not Negate
The ability to copy from the program is now in! Selection is also now its own struct to keep all data associated with it in place.