check invert for FieldMatrix< std::complex< double >, 2 >

See FS#1317 for details.
use field_type( 1 ) instead of 1.0

This fixes FS#1317 for me (use invert for 2x2 matrix with
std::complex< long double >).
The problem is that 1.0 is a double, which can be converted implicitly
to a long double which, in turn, could be converted implicitly into a
std::complex< long double >. However, the compiler does not use two
implicit type conversions, so double cannot be divided by a
std::complex< long double >.
Merge branch 'master' of http://git.dune-project.org/repositories/dune-common