Remove IsUnary() and IsBinary()

- This information is already stored in the node's NodeType field, so
  there's no reason to go do a table lookup for it elsewhere. Must have
  been a brain fart when I wrote them in the first place.
Add single <-> double conversions.

- With explicit casting now possible, converting from double to single
  precision floating point and back again needs to be possible, too.
Prioritize single->double conversions for FindBestProto()

- The binary form of ZCC_OpInfoType::FindBestProto() needs special
  handling for conversion from single to double precision floating point
  so that it doesn't choose an integer form over a floating point form
  when picking the best prototype.