improved group arg error handling

get_index() returned -1 and no exception set for unknown group names,
get_span() was overriding exceptions from get_index()

these are used by start(), end(), span() and group()