FFTMethods now uses ExecutorService

Added methods which use a given ExecutorService.
Methods which have number of threads given create a ExecutorService,
default number of threads is set to:
	Runtime.getRuntime().availableProccessors()
FFT now uses ExecutorServices

Added methods which use a given ExecutorService. Methods wich have
a given number of threads now create an ExecutorService. Default
number of threads is set to:
	Runtime.getRuntime().availableProcessors()
FFTConvolution now uses ExecutorServices

Removed interfaces MutiThreaded and Runnable.
Added constructors and methods to set ExecutorService.
Renamed run() to convolve().
When no ExecutorService is set on convolve(), it is created and
shutdown automatically.
FFT: fixed recursive method call bug
Code-Formatting: Added final statements
Merge branch 'fft-executor-service' into knip

Conflicts:
	algorithms/core/src/main/java/net/imglib2/algorithm/fft2/FFT.java
	algorithms/core/src/main/java/net/imglib2/algorithm/fft2/FFTMethods.java
	algorithms/gpl/src/main/java/net/imglib2/algorithm/fft2/FFTConvolution.java