Two miscellaneous improvements for Vim

If I'm modifying a macro and I type `$(blah blah blah)`, the region won't have ended yet. Preferably, it should end with the `)` and use `nextgroup` for the `.\?[*+]`. This will behave nicer if the user either forgot the repeat designator, or uses something like vim-surround but hasn't finished writing the sequence yet.