Refactor of WrapperTask to avoid repated complete() calls

Instead uses the in-memory mock file system in MockFile to keep state
and rely on luigi's task execution order to assume task completeness
of dependencies
Isn't the problem solved well by memoizing the complete() return value?