fix bug #521 in TopNMetricBuilder class
untested code for computing the precision and recall of a recommender output.
untested code for computing the independent recall of a recommender
untested code for computing the independent recall of a recommender  (rest of code from last commit)
added a few more itemSelectors in support of using the TopNIndependentRecallMetric to replicate previous work
updated capitolization on string constant
Merge https://github.com/grouplens/lenskit into feature/kluver-415-percisionRecallMetrics
Document and test provider shareability
Make JDBC rating DAO non-injectable
Add JDBC DAO builder.
Add caching to JDBC rating DAO (#541)
Add basic tests for the JDBC rating DAO
Fix bug in result set cursor
Make JDBC dao user/item filtering more correct
add missing license headers
changes for code review. Largely renameing two classes and refactoring out shared code.
Add non-null checks to table & column names
Add timeout to cache
Merge pull request #545 from kluver/feature/kluver-415-percisionRecallMetrics

Merge the top-N precision/recall code (closes #415, closes #521)