Resolved #589 where the method rules returned my methods were not e...

Have made following changes that resolves #589 
 - Added to the list of `MethodRule`s declared as fields, rules returned from rule provider methods which solves the issue
 - Added relevant test cases incorporating the change
 - Change in `TestClass#getAnnotatedMethodValues` method because previously while scanning for methods returning a rule of particular type method invocation was done and then the type was evaluated based on returned value. But this behavior created a side effect and failed a test when I incorporated behavior to resolve the issue. The case `TestRuleTest#testCallMethodOnlyOnceRule` failed because `TestClass#getAnnotatedMethodValues` was called twice to scan for `@TestRule` and `@MethodRule` annotations and that called method rule provider method twice. To solve that change is incorporated in `TestClass#getAnnotatedMethodValues`
style-nit: to add a blank line in Javadoc, we use `<p>` as specified in the style guide here: https://google-styleguide.googlecode.com/svn/trunk/javaguide.html#s7.1.2-javadoc-paragraphs

For example:

    /**
     * If there are any public methods annotated with @Rule returning a {@link MethodRule}
     * then it should also be run.
     *
     * <p>This case has been added with 
     * <a href="https://github.com/junit-team/junit/issues/589">Issue #589</a> -