Make Element a monad by adding map and flatMap.

This allows using for-comprehensions with Elements.
Add tests for Element#map and Element#flatMap
Merge pull request #80 from nightscape/monadic_elements_dev_2_1

Monadic elements dev 2 1
Merge pull request #1 from p2t2/DEV2.1

Dev2.1