Use 4.5 framework in core and addins

Shared libraries can still use older frameworks.
Merge pull request #602 from dipamchang/browser-support

[AspNet] Browser Execution Targets for ASP.NET projects
[AspNet] Fix test failure
Fixed 'Bug 20824 - "Delete entire line" only deletes the line that the
cursor is on.'.
[NuGet] Fix incorrect paths added to repositories.config on Mac.

With a custom repositoryPath defined in the solution level
NuGet.config file the paths written to the repositories.config
had an extra ../ at the start. These paths being wrong meant that
a NuGet package installed from one project in a solution would
result in it being removed from the packages directory even if
another project was referencing it.
Merge branch 'master' into nuget-support-v2
[Mac] Clean up remaining System.Drawing use
Fix build
Updated reference to md-addins
[xwt] Bump for native embedding fix
[NuGet] Fix incorrect error message when retargeting project packages.

Error message mentioned updating when it should have mentioned
retargeting. This error message is only displayed if something failed
during the steps before the retargeting was started.
[NuGet] Show packages up to date message in status bar.

When the user updates a single package, all packages in the project or
all packages in the solution and all packages are already up to date
then the status bar now displays a message indicating that the package
or packages are up to date.

Previously the NuGet addin would display a message that the package or
packages were successfully updated when nothing actually happened.
[Ide,Mac] Move some mac specific code to MD.Ide

Move some mac code to Ide so that it can be used in the implementation
of mac-specific UI.

There is some code duplication right now (MDMenu). The duplicated code in
the mac platform will go away as we advance on the port of the shell to Mac.
[MacSystemInfo] Add Yosemite
[NuGet] Different message when no updates found but warnings logged.

When one of the package sources is unavailable or invalid then NuGet
will report a warning when checking for updates. Previously the NuGet
addin would display the following message even though no packages
were updated:

"Packages updated with warnings. Please see Package Console for
details."

One way to reproduce this is to have the main NuGet.org feed enabled
and add another NuGet package source with a url that does not have
a package source or a host name that cannot be resolved. NuGet will
find no package updates at the main NuGet.org package source and
report warnings for the other package sources.

Now the NuGet addin has been modified so that when no updates were
found but warnings were reported the status bar message now reports
the following message:

"No updates found but warnings were reported. Please see Package
Console for details."

Longer term the NuGet addin should determine if the warning reported
was due to a networking problem and then display a more specific error
message should be displayed. Currently this is not implemented.
[Mac] Pull libxammac.dylib into build
[Mac] Don't use Gestalt(sysv), incorrect on 10.10
[Ide] Custom tool service should broadcast file changes

BXC8026 - T4 template regenerated only on every other content change

Also avoid unnecessarily re-saving the project.
Updated reference to md-addins
[NuGet] Modified NuGet AggregateRepository error handling.

Allow AggregateRepository to return packages if one repository fails.
https://github.com/mrward/nuget/commit/bdfb90a93d7165b2b3b76202ee363ec185721348

Give AggregateRepository classes access to failed repositories.
https://github.com/mrward/nuget/commit/495751e7c70c8bedc4a73de5e97bd4cbbdb59d27

Previously when IgnoreFailingRepositories was true and the Search
method was called on the AggregateRepository then if any
repository throw an exception then this exception would not be caught.
The other methods on AggregateRepository do not have this behaviour.
GetPackages, for example, will not throw an exception if one package
source throws an exception. All the methods on AggregateRepository
apart from Search use the Wrap method to handle any exceptions thrown.

Now when IgnoreFailingRepositories is true calling the Search will now
return packages even if one package source fails. The Search method
now also uses the Wrap method to handle any exceptions thrown.

When IgnoreFailingRepositories is true and a repository fails a
derived class is now informed about the failure instead of the error
just being logged.