E.g. the competencies api should be in a competencies subsystem, webservices should be in core - not tool_lp - reusable UI elements should be in core - not the plugin - some things should remain in the plugin though - e.g. the API + webservices are core - but the plugin (tool_lp) provides one possible UI - and you should be able to uninstall the plugin and provide a new one to completely replace the UI.
This should be done all at once and right near the end of the cycle (like the behat tests) - ie get the whole thing up and running as a plugin to prove the design, then pick the core bits and move them.
- Some AMD modules