Remove active_model_serializers dependency.

Remove extra level of nesting for messages. Messages are now included in
the top level hash with time and revision.
Renamed Checker to CheckerClass, removed the Singleton module.
Removed active_model_serializers dependency.

Extracted time and revision checks into Checks::TimeCheck and
Checks::RevisionCheck, and applied them as the default checks.

Updated Checker#add_error to allow for I18n interpolated values.

Updated Checker#add_check to take a block in addition to a lambda or
object that responds to #call.

Flattened the messages key in the JSON response. All messages are now
included at the top level of the hash.

It's now possible to remove all checks by calling Checker#clear. This
includes the default TimeCheck and RevisionCheck checks.
Added Checker#halt! which checks can call to short-circuit processing of any further checks.
Simplified the I18n lookups for error messages.