Move required initialization to init.
Make subpath work properly with a base path; the trick is to look up
the path for a combination of both base and model, not just model.
required is combined correctly.
Test a few more cases.
A correct non-conflicting test and a failing non-conflicting test.