Add basic implicit feedback data support

This adds basic support for implicit feedback data.

- Adds `Plus` event (#517)
- Refactor text-based data access to be more general, deprecating `SimpleFileRatingDAO` and creating new `o.g.l.data.text` package
- Support reading CSV files of unary events, optionally with timestamps
- Support reading CSV files of arbitrary event types with arbitrary fields
Im worried about this class. Will people ever be in the situation where they want to switch from the cool thing above to this class? If so what does that transition look like? It looks like they configure entirely differently, they shouldn't configure differently if its concivable that someone would want to go from one to the other.