RUBY-697 Support nolock option in DB#eval

This change to DB#eval allows a user to specify :nolock => true to prevent the command from taking a global write lock.

See the documentation here for details:
http://docs.mongodb.org/manual/reference/command/eval/

The splat operator was used in the method signature to allow arbitrary args but if :nolock => true is the last argument, it can just be popped off the args list.

Example usage:

    db.eval(function, 'hello', :nolock => true)