Added header to net.imglib2.display.ColorTable

Added the ImgLib2 header to ColorTable.
split AbstractListImg part of ListImg (this will be shared by cached-to-disk cellimg).
ListImg accessors get values by calling AbstractListImg.getPixel(index).
AbstractListImg does not decide how pixel objects are stored, ListImg
implements this using ArrayList.
The data access type A does not need to extend ArrayDataAccess<A> in most parts of the CellImg.
Factored AbstractCells abstract class out of ListImgCells.
AbstractCells keeps a grid of cells in some RandomAccessibleInterval & IterableInterval.
ListImgCells extends this using a ListImg to keep the cells.
formatted cellimg package to imglib style, added some finals, fix javadoc.
added eclipse code formatter profile for imglib2 code style.
Created ArrayColorTable interface

The ArrayColorTable interface specializes the ColorTable interface for
ColorTables which store their values in arrays. ArrayColorTables take a
generic type parameter which represents how the values are being stored
(e.g. bytes for 8-bit tables, shorts for 16-bit).
Reorganized AbstractColorTable

Added section headers to separate field, constructor, abstract methods,
and ColorTable API methods.
AbstractColorTable implements ArrayColorTable

AbstractColorTable already had a generic type indicating the type of
color table being returned. Now that there is an ArrayColorTable
interface, it makes more sense that AbstractColorTable implement the
most specific interface that it can, so that other consuming code can
take advantage of its generic parameter.

As part of this implementation a getValues() implementation was
provided.
Push AbstractColorTable API into ArrayColorTable

It is better for extensibility for public methods to be declared in an
interface, rather than in an abstract superclass.
Add missing @Override tags
Clean up javadoc
Renamed AbstractColorTable

Renamed AbstractColorTable to AbstractArrayColorTable, as it now
implements the more specific ArrayColorTable subinterface.

References updated as appropriate.
Merge branch 'color-table-expansion'

The primary focus of these changes is the introduction of an
ArrayColorTable interface.

As the abstract and concrete ColorTable implementations all have a
generic parameter corresponding to the underlying array type, but there
is no way to capture this generic type at the interface level, the
ArrayColorTable interface was inserted between ColorTable and
AbstractColorTable in the type hierarchy.

Using an ArrayColorTable now allows capture of the generic type without
specifying a specific abstract or concrete implementation.

This branch also improves the style, formatting and javadoc for the
ColorTable class hierarchy, and renames AbstractColorTable to
AbstractArrayColorTable.
bugfix: synchronized NTree methods to make NTreeImg thread-safe.
OPS: remove 2d limitation from interpolating function
Organize imports
Fix a bunch of Eclipse warnings
Avoid a javac compiler bug

I inadvertently removed the workaround by allowing Eclipse to clean up
what it perceived as unnecessary casts. I have slightly reworked the
workaround so that both javac and Eclipse are satisfied now.
Merge branch 'master' into knip_deployment

Conflicts:
	imglib2/algorithms/gpl/src/main/java/net/imglib2/algorithm/fft2/FFTConvolution.java
	imglib2/algorithms/gpl/src/test/java/net/imglib2/algorithm/region/BresenhamLineTest.java
	imglib2/core/src/main/java/net/imglib2/combiner/AbstractCombinedRandomAccessibleInterval.java
	imglib2/core/src/main/java/net/imglib2/img/planar/PlanarImg.java
	imglib2/core/src/main/java/net/imglib2/util/Intervals.java
	imglib2/ij/src/main/java/net/imglib2/img/display/imagej/ImageJFunctions.java
	imglib2/ops/src/main/java/net/imglib2/ops/img/BinaryUnaryOperationAdapter.java
	imglib2/ops/src/main/java/net/imglib2/ops/img/UnaryBinaryOperationAdapter.java
	imglib2/ops/src/main/java/net/imglib2/ops/img/UnaryOperationBridge.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/UnaryOutputOperation.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/img/unary/ImgRotate2D.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/interval/binary/IntervalsFromDimSelection.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/iterableinterval/unary/MinMax.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/randomaccessibleinterval/binary/IterateBinaryOperation.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/randomaccessibleinterval/unary/IterateUnaryOperation.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/subset/views/IterableSubsetView.java
	imglib2/ops/src/main/java/net/imglib2/ops/operation/subset/views/SubsetViews.java