gf. scatter does bcast of singularity
add test for bubble calculation
[clef] Clean. Fix sum function.

- simplify some implementation in C++14 mode : less steps, better error
  messages, etc...
- clean C++14 mode
- pb was the deduction and construction of return.
- use iterator
[gfs] Clean, fixes for multivar
[arrays] Fix #118. Assignment to object convertible to scalar

- For a matrix, A = s, where s is scalar was coded properly,
  but not general enough when s is not a scalar, but can casted/converted to
  scalar, e.g. matsubara_freq, mesh_points.

- As a result, doing with a gf :
  g(om_) << om_ + 0.0  // was fine because the expression evaluated to complex
  g(om_) << om_ + om_  // was not : evaluated to matsubara_freq
  g(om_) << om_        // was not : evaluated to mesh_point_t

- Solution : In the case A = s, when s is not a scalar, but convertible
  to it, we use the convertion.
  Impl : allow is_scalar_for to be true when the type is only convertible to scalar.
  Also : split implementation of matrix = scalar into true scalar case/ generic case
         to avoid the strange RHS(0*rhs) construction.
        TODO: make a make_zero function ?

- added a test
Fix C++11 compilation