Rewritten the sub-module system
Add policy manager