Fix compiler error on gcc 4.9
More fixes for declval
Making things explicit...