port to numpy 1.7

- port to numpy 1.7 API : the changes consists in hiding some internal
  details, so we must use pyArray_Dim and co functions.
  The biggest change comes with PyArray_SetBaseObject
  in the C-> python guard mechanism.

- added autodetection of numpy version by cmake
  - if version is < 1.7.0, then  -DTRIQS_NUMPY_VERSION_LT_17 is added to
    all compilations, and code is  the same as before this patch.
  - if version is >= 1.7.0, this macro is not defined,
    and the new API is used. (overrule this in first_include.hpp if need to debug).

- it works on mac, BUT :
a strange crash when doing a superfluous PyarrayCheck in memblock copy constructor (cfline 94)
could not be properly explained.
The code compiles and pass all tests when >=1.7.0, but this bug clearly NEEDS TO BE INVESTIGATED.

--> to be retested on 13.03 which has the 1.7.0 by default !
gf : correction of matrix_stack with adding

- For +=,-= when it is a scalar, the type of the
"identity" array may be wrong e.g.
in demo a double. this would lead to a array of double,
which matrix_stack cython does not know how to
add to an array of complex.