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.
I know we didn't change this but 5 minutes sleep time seems kinda long.