RSpec 3 upgrade

* Cucumber updagraded to 1.3.16
* rspec-rails gem removed
* Disable `should` syntax
Remove last instances of RSpec `should`
Merge pull request #193 from alphagov/rspec3

RSpec3
Remove unrequired date validation requires
DRY up SpecialistDocument validators
Validate against Js in SpecialistDocument body
Don't pollute SpecialistDocument with errors and changes

No need to pollute the SpecialistDocument here with ActiveModel methods
these shouldn't be required here and should be the responsibility of the
validators.

This does however break the importer as we don't provide 'valid?' or
'errors' methods for the importer because we do not use the
SpecialistDocumentValidator. In order to solve this we use a
NullValidator to implement sensible defaults for these.
Use validator directly

When calling valid? in preview we end up with failures due to validation
errors being lost somewhere in the validation chain. Instead use the
validator directly which allows the errors hash to bubble up the chain
correctly.
If the body is invalid, render an error instead of the preview
Use pry-debugger to provide step functionality