Route matcher fix enchanements

This is a request to merge tcollinsworth:RouteMatcherFixEnhancements commit c72810c into the 2.x branch to enhance RouteMatcher so that routes can be updated while RouteMatcher is in use. 

The commit includes comprehensive tests. In the concurrency test, if the setUptadable is removed, the test will fail with the existing RouteMatcher which demonstrates the existing concurrency issue.

The issues are documented in Eclipse Bugzilla as:

•	445552  RouteMatcher throws ConcurrentModificationException if updated while route matching
•	445554  RouteMatcher doesn't support updating a route or removing a route