Add documentation to MessageList.
[ci skip]
Use a custom list/object manager to hold the registered checks.

This ensures object uniqueness and order persistence across Rubies.
Use Ruby 1.8-compatible Hash format.
Add Ruby 1.8.7 to Travis testing.