Messages not acked when bulk request execution throws an exception

When a `BulkRequestBuilder` executes and throws an exception, the exception is swallowed and messages are not acked here: [RabbitmqRiver.java](https://github.com/elasticsearch/elasticsearch-river-rabbitmq/blob/0619e1149eb9b5ffddc48fbb24782aae623f2d58/src/main/java/org/elasticsearch/river/rabbitmq/RabbitmqRiver.java#L389-L391).

When this happens, the messages remain in RabbitMQ in the "unacked" state, and can't be retrieved or removed without deleting the queue. RabbitMQ eventually runs out of memory when these messages pile up.

River should ack messages pertaining to a bulk request that throws an exception, or the Elasticsearch client should return a list of failures instead of throwing an exception. Either way, it doesn't seem like good behaviour for the River to fail to ack messages when it can't deal with them.

A new option `nack_errors` can be set to `false` (default to `true`) to keep the old behavior, meaning that failing messages are never marked as failed.

Closes #47.
(cherry picked from commit fefa524)