check_import_order: explicitly use `override`

This commit is a small refactor/cleanup so that the calls to and in
`construct_import_dict` uses the `override` keyword explicitly rather than
expecting it to be positional forever. This allows me to add other
positional or keyword arguments in the future without the risk of breaking
existing code.
check_import_order: add comment regarding PYTHONPATH for local imports

This commit adds a comment in `construct_import_dict` to explain that
if we have not otherwise detected the module type and categorised thusly,
we assume that the import is valid and that it gets found on PYTHONPATH,
and assign it to the "local" category.

In the future I might make this check explicit and fail on any modules
which haven't otherwise been categorised.
check_import_order: [bug] create override local section with correct args

Previously, the local section override dictionary was incorrectly,
constructed using the "--third_party" command line argument, *not* the
"--local" argument. This bug has been hidden because "third_party" modules
were determined before "local" modules, but was discovered during
development to further support local directory imports.
check_import_order: support implicit local directory imports

Previously, I have added support for import lines "from . import ..."
which import a local submodule from a local package directory. This commit
adds further support for local imports by checking the local directory
of the importing script for further modules.

It is important to note that local directory imports take presidence over
all other imports, meaning if you create a local module with the same name
as another non-local module, the local module is imported rather than the
non-local module.