Fix off-by-one bug in JDBCJoiningFeatureReader

Prior to this commit, JDBCJoiningFeatureReader had an off-by-one bug its
column cursor management for joins on DataStores with exposed primary
keys. See [GEOS-5149](https://jira.codehaus.org/browse/GEOS-5149) for an
example of the kind of behavior this bug was causing.

Also added logic to exercise primary key exposition in
JDBCFeatureReaderTest, and extended JDBCFeatureReaderTest to exercise
JDBCJoiningFeatureReader.