Be more strict about what we accept and what we don't
Fix tests, and add some more too