Support i18n in CC

This patch includes the code to introduce i18n into CC, contains:
(1). i18n init code
(2). Change the base controller to accept new HTTP_ACCEPT_LANGUAGE param
     which identifies the locale of request client
(3). Enhanced ApiError class to translate the error message for REST API
     response.

This patch does not include concrete REST API controller changes to
enable i18n. The changes of concrete REST API controllers' changes
will be submitted in other patches.
Merge branch 'support_i18n' of git://github.com/xingzhou/cloud_controller_ng into xingzhou-support_i18n

 - Update base_controller_spec changes to fit in with new style of tests in this spec
 - Also test for never_Neverland as locale instead of en_US to avoid potential false positives due to en_US being the default

Signed-off-by: Michael Fraenkel <fraenkel@us.ibm.com>

Conflicts:
	lib/cloud_controller/config.rb
	spec/unit/controllers/base/base_controller_spec.rb
	spec/unit/lib/cloud_controller/config_spec.rb
Clean up internationalization changes

 - Get rid of deprecation warning (and test we can handle new default for enforce_available_locales)
 - Move setting up of internationalization in to ApiError class so that it gets tested by api_error_spec
 - Ensure locale header is set in front_controller rather than base_controller so that requests that don't go via base_controller (such as 404s) also get i18n-ed error messages
 - Fix up some test pollution by reloading i18n backend in setup

[#74023440]

Signed-off-by: Michael Fraenkel <fraenkel@us.ibm.com>
Support special characters in staging_upload auth

 - To avoid breaking users who currently supply username/password already-encoded in the config file, only kicks in if the current value is not already validly encoded
 - This means it remains possible to simply specify url-encoded users and passwords in the config file, but if users do supply unencded values we'll attempt to do the encoding ourselves rather than blowing up

Fixes issue reported in #245

[#71526114]

Signed-off-by: Michael Fraenkel <fraenkel@us.ibm.com>
Remove dead SpacesController::ServiceSerialization module

[#67279870]

Signed-off-by: Michael Fraenkel <fraenkel@us.ibm.com>