Flatfield

Adds "a field for your indicator document that can perform basic operations on an item.  Pass in a function that accepts an item and returns a dict."  I welcome suggestions on the name if you've got something clearer.
Example:

        class MyFluff(fluff.IndicatorDocument):
            document_class = CommCareCase
            ...
            name = fluff.FlatField(lambda case: case.name) 

I've been using this for a little while for my custom report, it's time to solicit feedback and merge it in to master.