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
> Changing now would be changing based only on my apprehension, and not any actual experiance with the distinction causing issues to others.

That's N=1 for someone else understanding (or not) what I was thinking. Which is better than the N=0 we had before. If the first reaction from you — who is familiar with the code base — is ‘that's confusing’, then that's a pretty strong sign we should be rethinking the design.

> This is, of course, contingent on you wanting to take the time to build that out. this proposal sounds like a nontrivial ammount of work, and if we just want to move forwards I would say we should just remember this discussion and take action if problems materialize.

Won't really take that long, I don't think.