Add implicit constant cast

This allows me to do something like

  auto v = constant<builtin<uint64_t>>(7);
  if (v < 3)
    ...

Essentially it's just a convenience method so I don't have to add a
bunch of operators to the constant.  Additionally, this allows me to
do stuff like

  auto v = constant ...
  for (size_t i = 0; i < v; ++i)
    ...

which is nice.