Utilities: Add new group controller

Added a new class for group controller such that the state is saved
for each iteration with a new group column. The column is set to use
NULL value if no grouping option is provided.

Also updated logisitic regression to use the new group controller
providing grouping support. The new API is now functional.