Warnings are errors

this fix warnings and enable warnings as error.

This is an example why:
- 5081a95 fix bug on `fsc --server`, detected by unused function warning
- 899301c fix bug on another method ( copy/paste ), detected by unused parameter warning
- f2dcc5e fix duplicated code ( moved code ), detected by unused function warning

also:
- disable reference of windows only assemblies on mono, less noise. Cant use conditional reference based on `CROSS_PLATFORM_COMPILER` directive, because of [xbuild bug](https://bugzilla.xamarin.com/show_bug.cgi?id=3010), so i disabled the reference on unix/mac.
- update vs 2013 solution to vs 2013 update 1, is only a patch version change but vs always change it on open

There are some reference warnings ( assembly not resolved or framework not found ) added some days ago related to profile 7, but i dont know how to fix