First cut at initial feature fn requirements

This is more of a heads up to what would be good initial list to aim for and to get feedback on whether this is how we imagine such functions looking in the first place.

/cc @markhibberd @charleso 
I'm curious how we might implement this. Is it acceptable to build up a set in memory per entity? Or do we need to do something else.