I believe all independent pattern matching checks are complete except possibly for crazy empty list cases...; added some more pattern unit tests