Mongoid4 Compatibility

This is the beginning of a Mongoid 4 compatible version of this gem.

I've set up Travis-CI to run the test suite against multiple Mongoid versions and Rubies, defaulting to Mongoid ~>3.1

__This is not ready to merge yet.__ I'm using this PR as a base for discussion.

The only failing test is that adding to the tags using `<<` does not correctly reflect changes in the document:  

```ruby
foo.send("tags=", [])
foo.send("tags") << ["foo", "bar"]
```

```ruby
foo.changed => ["tags"]
foo.changed? => false
foo.changes => {}
```

I'm kind of out of ideas now, it's my first time playing with Mongoid internals and I'm not sure if this is a problem with the Mongoid gem itself, or with this one.