Initial version of ImgLib operations API.

Migrated from ImageJDev SVN:
http://dev.imagejdev.org/trac/imagej/browser/trunk/ij2-imglib/src/test/java/imagej/imglib/examples?rev=2193

Signed-off-by: Barry DeZonia <bdezonia@wisc.edu>
eliminate backup files
change iteration observation to use java.util.Observer
eliminate QueryOperation as an AssignOperation with a NullFunction surpasses it
partial implementation of rev 3 (proof of concept) of ops code
minor fix to image creation code
package reorganization
forgot to delete old package structure. doing so now.
note some TODOs for future reference
quick implementation to outline how a Condition could be constructed with a DistanceFunction.
since work is all done in doubles remove unnecessary generics
added Constraints to the imglib-ops subproject
made many classes and class members final. also got rid of code where functions may return their last evaluation. that code would not have been threadsafe.
renamed IntegralScalarFunction to IntegerIndexedScalarFunction
this file belonged in previous commit
implement ComposedImageFunction to be able to replicate rev2 ops functionality
renamed the null function to the easier to handle NullFunction
added test code to average multiple images together. temporarily hacked AverageFunction to smoothly handle 3d averaging given a 2d coordinate. Must address in a general way later.
reorganize package structure in imglib-opps : break out imglib.ops.function into subcategories that delineate the number of paramaeters each function implmementation can accept
implementation of a few functions in ops for exploitation by IJ2 plugins. Use of imglib-scripting functions can replace these in the future.
added operators to support simple IJ2 plugin capabilities
add the final keyword in numerous places to aid performance