Add map, make times and plus variadic, add minus, add infix operators

This includes a cleaned up version of #3 as well as a whole bunch of new, fun features.