index.js is now back to being a thin wrapper around lucene. if you use
the plain index you will have to add lucene-document-objects, you will
have to take care of encoding values correctly for the update/remove
functions and so on.
indexwriter - again - gets name/value and constructs his own term object
for update/remove
added simpleindex being a wrapper around index adding some convenience

you can call add/update with a plain javascript object but you will
have to set the metadata describing the schema of those objects. This
schema must - at least - define one field that gets stored in the index or
indexing will be rendered useless. Ther is no point in querying something
that is not able to return anything.

For example you can create a simpleindex as follows:
var config = { meta: {id: {store: true}};
var sidx = new SimpleIndex(theRawIndex, config);

// update/add can now be called with a simple js-object
sidx.add({id: 1, text: "sidx-ecutes your stuff", someotherfield: "some
other value"});
sidx.update("id", 1, {id: 1, text: "sidx - me like ringojs",
someotherfield: "another value");

// you can also define the type of the indexed field
var config = { meta: {id: {type: int, store: true}}
add/update will then use lucene's apropriate class for the type and
update/remove will also convert the value into a lucene-understandable
ByteRef Object if needed
Available/implemented types: float, int, double, long
(NOTE: float will be translated into double to work around a rhino bug
which converts java-primitive float-values incorrect)

The result of a query will also be wrapped by a helper returning plain
javascript-objects.
result.size() - number of hits
result.get(idx) - get the hit at index-position idx
result.getScore(idx) - get the score of the hit at index-position idx
derty helper now even dertyer.. just reworked to use the
SimpleIndex-wrapper