Fix #259

Added whitespace buffer to ‘+’ when creating rule groups so it doesn’t
get associated with other tokens.
Whitespace between arrow and object is optional

Previously, if an object had a directional arrow (but not ‘v’) attached
to it (like “>player”), it was rejected. But since it can be
unambiguously parsed (same as “> player”), it now is.