Add map() and flatmap()

As discussed in #11.
TBH, I just got it stuck in my head that [it would be better for performance reasons](http://airspeedvelocity.net/2014/11/27/running-totals-and-force-unwraps/) to do the plain old for-loop.

But I really do prefer how [this](https://github.com/sharplet/Set/commit/e2064d2d0dfe1f048bb7db9c032582552fdd46c0) turned out!