Arrow/lens operators

This includes overA and assignA for working with lenses and arrows. (And introduces %~< and <~< as inline versions)

I talked with edwardk on irc on Tuesday about this. Environment/build issues delayed me for two days.