Reporting commons

1) The annotations
2) Classes to be shared for Solution and Reference
3) Models for Rule and RuleProvider