refactor flume jmx collector. monitor versions from different threads

@mustpax 

Use main thread to do version polling. Monitor each version in a separate thread so they can make independent progress.