use RegexLexer#groups instead of RegexLexer#group

Also change some `pop!; push :state` invocations to `goto`
deprecate #group and get rid of @group_count