moved from using sequences to using lists wherever possible because of the stack-overflow issues when dealing with tons of files. Refactored the Hypervisor to use active patterns to reduce the match nesting where ever possible