Lazy Loading PyQt Data Models (for QTreeViews)

Sometimes loading all of the required data into a model at the time it’s created is not a great option.  For example, you wouldn’t want to have a file system model enumerating every file – this could take quite a while, and besides, the user is not likely to want to navigate to every file…