Fix tracking of multi-block IceVariable usage.

IceVariable::setUse() is changed to be virtual IceOperand::setUse(),
to give IceOperandX8632Mem (and other derived operand types) the
chance to register any internally held IceVariables.  This doesn't
change any results for now besides dump() output, but it's important
if we want to segregate variables between block-local and multi-block
use for optimizing for sparsity in liveness analysis.
Use portable llvm::TimeRecord for IceTimer.  Fixes #30.

Basically reverts 470d34e16e1408432757ad832d68db17adb2575c.