[mpi] introduce conditional compilation with cython macros, split mpi parts into separate source files

in setup.py:

o check for existence of libraries and define macros
[setup] More stuff into LibraryChecker

o file types
o summary 'HAVE_*'
[mpi] Fix build if long library is missing
[mpi] more robust handling of missing libraries

o select any available fftw*_mpi_local_size
o raise meaningful exception if scheme not supported
o import MPI: try..catch
o skip unit tests
[mpi] local_size* function properly selected at compile time, tests skipped if library is missing
[setup,mpi] Build mpi support only if mpi compiler defined (via environment) and mpi4py importable

o use distutils.log for output
o update mpi installation instructions
[test] Fix mpi test for 32 and 64 ranks

o remove some debug output and commented code