Completely changed the ServletJUnitRunner class. It now extends the BlockJUnit4ClassRunner.
Added a PortSetter to the ServletJUnitRunner so that the port is provided to the test when required.
Implemented the Socket configuration.
Fixed the JavaDocs.
Moved the source files into more specific packages to mitigate name clashes.
Removed the casting within AnnotationStaticSocketConfigFactory.
Implemented the AnnotationServletsFactory.
Implemented an AggregatedContainerConfigFactory.
Updated the AggregatedContainerConfigFactory so that it expects a NullContainerConfig to be returned it's internal configs if nothing is found.
Refactored the annotation tests so that the target classes are defined within the test methods.
Implemented the ClassAnnotationContainerConfigFactory.
Added Given, When, Then comments to the ClassAnnotationContainerConfigFactoryTest.
Implemented the MethodAnnotationContainerConfigFactory.
Moved the PortSetter out into the root package.
Implemented the AnnotationPortSetter.
Refactored the SocketConfig so that it is now just a PortConfig no longer exposes a ServerSocket.