Flatten class hierarchy

Make Either a class under Deterministic directly
Use Struct instead of Array for Matcher
Merge branch 'master' of github.com:pzol/deterministic