Created (draft) each_way.

It is asserted that all the other rules can be derived (proven) from
each_way...

There must be a more elegant implementation than the one I have here,

Python gives us the extraordinary tuple-[un]packing mechanism but I can't
make full use of it here due to the necessity to handle "nothing"
expressions.

If I have to use these two slightly clunky versions and can get the rest
of the rules "for free" (without much further python code) then that's
okay I suppose, but I'd really like a cleaner implementation.

Perhaps Python-Omega can help...