ASACORE-775 About Feature rework - improved error handling

- New status ER_ABOUT_DEFAULT_LANGUAGE_NOT_SPECIFIED
- Updated the description for the AboutData constructor to make it clear that
   the DefaultLanguage must be set before Setting DeviceName, AppName,
   Manufacturer, and Description
- Created a constructor for AboutData class that will take a MsgArg as a
  parameter
- If a user tries to set one of the localized values and have not set the
  DefaultLanguage tag.  The Set method will return a status
  ER_ABOUT_DEFAULT_LANGUAGE_NOT_SPECIFIED. If the user explicitly specifies a
  language they should not see this error.
- If a user calls AboutData.GetMsgArg using an unspecified language the
  function will properly return ER_LANGUAGE_NOT_SUPPORTED status.
- Fixed error that AboutData.GetMsg arg was always returning the DefaultLanguage MsgArg
  when a different language has been specified.
- AboutProxy returns more reasonable errors.
- If the "org.alljoyn.Error.LanguageNotSupported" error is returned by the
  AboutProxy.GetAboutData method call the status returned will correctly be
  ER_LANGUAGE_NOT_SUPPORTED.
- More unit tests added to verify AboutProxy and AboutData.

Change-Id: I93b8c67e109a12336c6c1d2b14e4090bacb2024c
Signed-off-by: George Nash <georgen@qce.qualcomm.com>
Merge "ASACORE-775 About Feature rework - improved error handling" into feature/about_rework