Add \OC\App\Manager to handle enabling/disabling apps

Add a proper public interface for enabling/disabling apps.

I would like to expend this in the future and refactor all off `OC_App` in a proper public interface later.

cc @DeepDiver1975 @PVince81 
Group manager might not be initialized if the session app hasn't been loaded yet (ex: like with LDAP)
Does this approach cover that case ?