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
2 reasons:

- I default to interfaces
- The derived class will have to override the methods anyway to provide an appropriate return type for chaining, so why not have them just implement the method? Then the whole logic for a particular builder is in one class.