Enable parallel fetching for JRuby

This Pull request does two things:

1. It refactors worker pool code in more manageable bits. Added some real world tests for parallel install as well.
2. It enables parallel fetching on JRuby platform. But this feature only works with RG >= 2.1 on platforms other than MRI.