Implement sorting and filtering

Addresses #97. Just waiting for Evan's filtering API
nitpick : makeOption?

Or `maybe` also sounds good..