Heavily optimized ContraharmonicMeanFilter.cs

I realized that I was recomputing the same values over and over again when
computing the denominator and numerator. I decided to memoize the results into
a numerator and denominator table ahead of time. This cuts the number of Pow
calls down to 512 instead of width * height * 2a * 2b.
Added a conditional check to TranslateData to prevent unnecesary copying

The hashtable returned from TranslateData_Impl could be the provided hashtable.
Because of this it is a good idea to check for reference equality so that we
don't copy a reference to an image into the same cell. While the transfer may
be simple, I don't know if there is anything strange that occurs. Thus, it is a
good idea to just do the equality check first to see if it's even necessary
Optimized GeometricMeanFilter.cs
Optimized HarmonicMeanFilter.cs

I realized that I was performing a large number of divisions that were not
going to change. Fixing this issue required memoizing 256 division operations
into a static table that is only accesible by instances of the filter.
Heavily optimized HighBoostFilter.cs
Optimized MaxFilter.cs
Optimized MedianFilter.cs

I also removed a bizzare lock statement, I have no clue why I did it :/
Fixed a compile error in MedianFilter.cs

The removal of the lock caused a scoping issue to arise. This has been fixed.
Optimized MidpointFilter.cs
Optimized MinFilter.cs
Optimized SharpeningLaplacianFilter.cs
Optimized SmoothingFilter.cs