Add non backtracking versions of ~> and <~

This adds ``<~!`` and ``~>!`` which are equivalents of ``~>`` and ``<~`` without backtracking, lust like ``~!``.
It also includes a test for ``~>``, ``<~``, ``~>!`` and ``<~!``.