Refurbish as_size function

Made as_size a non-dispatched function.
Updated usage accordingly.

you don't need to include this.
It's only if you want to do `auto f() -> decltype(xpr) { return xpr; }` or `decltype(auto) f() { return xpr; }` depending on whether you have C++14 or not.