Offheap incremental index

* IncrementalIndex now uses offheap to store aggregates
* GroupBy queries use processing buffer to store intermediate results 
We need to provide guidance for setting -XX:MaxDirectMemorySize for indexing.
Currently this only takes into account the number of processing threads for compute nodes, but not needs for the indexing tasks. I got `java.lang.OutOfMemoryError: Direct buffer memory` when running indexing task.