reworked API for index_t, we don't need an ::execute method, we only need the ability to collapse the index, or index range to a slice which operations are then performed over