Fixes #5149 - Pulls widgets library into Elgg_WidgetsService
Refs #5149 - Removes obsolete private API documentation
Refs #5149 - Adds explicit methods visibility
Refs #5149 - Added ElggWidgetsServiceTest
Refs #5149 - Fixes tests bug
Refs #5149 - Adds getAllTypes and getNameByType methods, removes getWidgets
Refs #5149 - Replaces setValue with setFactory for services creation in Elgg_ServiceProvider
merge pull request #5160 and fixed coding standard issues

Conflicts:
	engine/classes/Elgg/ServiceProvider.php