Use ActiveRecord#persisted? instead of ActiveRecord#new_record?

When record was destroyed, it will return false when new_record? called :
```
u = User.first
>> u.new_record?
=> false
>> u.persisted?
=> true

>> u.destroy

>> u.new_record?
=> false
>> u.persisted?
=> false
```
I think persisted? is more appropriate here.
Fix specs
Object#extend is a public method
Defined missing class Delayed::FatalBackendError
Show all errors by default
Update to latest RSpec syntax
Update Travis CI matrix
Added @brixen as a collaborator, who will ensure builds pass on Rubinius
Moved FatalBackendError to exceptions.rb file.
rubysl-json was yanked by @brixen; use json instead
Update Travis settings for Rubinius.
do not subclass Struct class

http://www.reddit.com/r/ruby/comments/14u7zs/dont_subclass_struct_classes_please/
* Modified the Worker#say method to be able to handle other loggers as "Syslog" that use their "add" method for other purposes.
Change activesupport dependency to < 4.2
Complete dependency update
Cleanup Worker#say
Merge pull request #638 from sergey-alekseev/master

do not subclass Struct class (update in README)
Merge pull request #647 from MSch/master
Merge pull request #646 from xrx/make_the_worker_say_method_more_flexible
Update travis link