FIX: NullPointerException in rare cases when iterating through hits.

Calling .doc(), .start(), etc. on a Spans object when you haven't called
.next() or .skipTo() yet may in some cases cause this exception (when
most of the time they would return -1). The Spans classes have been
reviewed and updated to prevent this from ever happening.