Some testing.
Added subtyping. Cleaned up.