Update to Lucene 4.10.1 and fix unit tests

Update to Lucene 4.10.1
Closes #79

[TEST] Move tests scripts to Groovy
Closes #71
I don't think this is real errors nor something need to be fixed in elasticsearch itself.

It's just an incoherency between what is done in unit test and the current river implementation. The test generates *i* AMQP messages that contains *j* bulk operations. The operations are mostly index requests, but can also be update or delete requests that concern the same documents of previous index requests:

Message 0:
* index 1
* index 2
* index 3

Message 1:
* index 4
* update 2
* index 5
* delete 3

...

Since the current implementation of RabbitMQRiver with default settings executes the operations in multiple BulkRequests in an async manner, the request "delete 3" can be executed before the request "index 3" as terminated.

In order to have stable unit tests, I see 2 solutions:
a) don't use overlapping index/update/delete requests in testing data (that's what I did first)
b) force the use of "ordered" mode for the river in unit tests, that executes the BulkRequests in a synchronous manner so that a update/delete request will be executed after an index request.

What do you think @dadoonet ?