Revert "Components.Add(...) should not Initialize Components"

This reverts commit c1544bce033f1d0432bb3ef360aef1707af15976.
GameComponents.Add() and Initializing GameComponents

Solve https://github.com/mono/MonoGame/issues/2105
Related to
https://github.com/mono/MonoGame/commit/c1544bce033f1d0432bb3ef360aef1707af15976

This is closer to XNA behavior.
-Initialization of Components is postponed until the call to
base.Initialize(...).
-Components added inside the virtual Initialize(...) but after the call
to base.Initialize(...) need to be self initialized.
-Components added later are auto-initialized.
remove unnecessary return
Fixed build for Android so that there are 0 errors, 0 warnings.
0 errors, 0 warnings for OUYA.
0 errors, 38 warnings for iOS.
Incorporated comments from @danzel.
0 errors, 0 warnings for Linux.
Mac OS with 0 errors, 4 warnings.
Fixes for 0 errors, 0 warnings on Windows(DX) and WindowsGL.
0 errors, 9 warnings for PSM. All warnings are developer-generated using #warning directive.
Merge remote-tracking branch 'upstream/develop' into tnc_Initialize_Components
Merge remote-tracking branch 'upstream/develop' into tnc_Initialize_Components
Fix vertical font padding in SharpFontImporter
[WP8] Create Debug Device only under DEBUG configuration

improve performance under release builds.
We don't have to create a Debug device.
Delete the shader program on link failure.
Fix Mac build.
Bugfix #2172 - TextureProcessorOutputFormat.DXTCompressed, does not match original XNA capitalization
Add missing ranged transform overloads to Vector3
Goofed on debug assertion