Add a serialisation error handler.

If there is a problem with serialising an ACL an error is raised but if
a handler has been set up it will be called.

This allows for error recovery.
Add a --no-fail option which logs any errors & continues.

If a number of messages are being pushed and there is an error in one of
the messages the entire push will fail. This adds an option which
rescues the error, logs a message and continues.
Remove gdbm gem, use the built in gdbm.

You need to ensure that gdbm is compiled into your ruby.