Implemented Counting Sort, tried to optimize the default implementation to work on negative entries.
Also testing out Code Contracts, https://www.develop.com/csharpcodecontracts