INT-3286: Add `@MessageHistory`

JIRA: https://jira.springsource.org/browse/INT-3286

Introduce `@MessageHistory` and `MessageHistoryRegistrar`.
Refactoring for `MessageHistoryParser` to use `MessageHistoryRegistrar` to follow with DRY
Add test for `@MessageHistory`