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
I'm not sure why I flagged this as REVIEW, maybe that was an old comment? (I started this code from copy-and-paste).

Java is usually unsafe — compared to C++ —  when it comes to creating file streams. This follows that unsafety, but it means that if the file reader is opened successfully, but the bufferd reader is not (e.g. out of memory), the file reader is not closed.