Port: IndexSearcher

Also added TaskSchedulerCompletionService to mimic java futures support