Added IDs() function for returning all ids
Added IDs() function for returning all ids

The API here is designed to allow for streaming results back to the
caller, otherwise for large data sets we are forced to allocate large
amounts of memory, and time to first response is much larger.  I tried
this and it wasn't pretty.  The API also provides a way to abort reading
further IDs if the caller wishes.

The implementation does many smaller queries to neo4j instead of one
single one for similar reasons.
Note that the query is not specifying ordering, and doing so slows the query
significantly (although it's not clear why - we have an index). During basic
testing, it appears safe in the current form and doesn't skip or duplicate
entries.  It may be worth investigating a more obviously robust approach.

Financial-Times/people-rw-neo4j