Changed Enclosed runner to ignore abstract classes. Before this change, an abstract enclosed class caused jUnit to throw an exception.
Implemented the changes proposed davidhart82
Changed the filtered collection to an ArrayList from an HashSet to avoid re-ordering of
existing order-dependant test suites, as per the comments of kcooney.
Implemented the changes proposed by kcooney:

1) Now passing classes.length to the constructor of ArrayList
2) Code style adjustment (no spaces before the = in an assignment)
Maven project junit:junit artifact
completed deployment Sourcefore and Maven central: verified OK
type "make" helps you to build without studying a config of IDE for Maven
deleted **/junit/runner/LICENSE
added documentation + improvements
signing all project artifacts before deployment
Remove @Deprecated from MethodRule and related methods.
TestWatcher.skipped(): Make test fail

To show problem of skipped not ignoring failures in skipped-method here is the test - which fails.
TestWatcher.skipped(): Make test pass

Now skipped() is handled comparable to failed() statement. Thus failures in skipped() method will raise an extra exception.
Otherwise just the AssumptionViolatedException is thrown.
Added abstract-avoiding behavior to the javadoc.
Change to Markdown extension for ease of viewing
Allow the array returned by a @DataPoints-annotated method to contain null values.
Issue #529: fix test case.

(Forgot to modify the class after copying, yielding essentially identical
tests.)
Change extension to .md for all release note files

Because we do not want to break any URLs pointing to the .txt files,
we keep them around but they contain nothing more but a short hint
to look at the .md ones.
Ant target 'release-notes' uses .md extension
Use TimeUnit.NANOSECONDS for JDK 5 compatibility

Fixes #531.