Refactor Value/LLVMValue

Only one thing remains to be done, and that's remove the Type method from govalue (nee LLVMValue).

I'm not married to the name "govalue", happy to discuss alternatives. It was originally named LLVMValue to distinguish from the then-present ConstValue, which produced an LLVM value on demand (hence the LLVMValue method). Being called LLVMValue belies the fact that it also has a Go type.