Made semantics a thing, added a test to them