Speed and Accuracy Fixes

Refactored the subtraction operator so that it now works completely

Created a multiplication operator overload for multiplying by a single limb

Generally reduced the number of memory accesses needed by each operation. Free/malloc still constitute ~45% of program running time.