Refactored the Vm a bit to better see results from profiling.
VmPattern now creates VMs for each operation. Added some docs.
Merge branch 'master' into performance