diff --git a/src/hdwallet.js b/src/hdwallet.js
index 7b57986..146b82d 100644
--- a/src/hdwallet.js
+++ b/src/hdwallet.js
@@ -179,8 +179,8 @@ HDWallet.prototype.toBase58 = function(priv) {
 }
 
 HDWallet.prototype.derive = function(i) {
-  var IB = new Buffer(4)
-  IB.writeUInt32BE(i, 0)
+  var iBuffer = new Buffer(4)
+  iBuffer.writeUInt32BE(i, 0)
 
   var cPar = this.chaincode
   var usePriv = i >= HDWallet.HIGHEST_BIT
@@ -192,21 +192,20 @@ HDWallet.prototype.derive = function(i) {
     // If 1, private derivation is used:
     // let I = HMAC-SHA512(Key = cpar, Data = 0x00 || kpar || i) [Note:]
     var kPar = this.priv.toBuffer().slice(0, 32)
-    IB = Buffer.concat([new Buffer([0]), kPar, IB], 37)
+    iBuffer = Buffer.concat([new Buffer([0]), kPar, iBuffer], 37)
 
     // FIXME: Dislikes buffers
-    I = HmacFromBytesToBytes(CJS.algo.SHA512, Array.prototype.slice.call(IB), cPar)
+    I = HmacFromBytesToBytes(CJS.algo.SHA512, Array.prototype.slice.call(iBuffer), cPar)
   } else {
     // If 0, public derivation is used:
     // let I = HMAC-SHA512(Key = cpar, Data = χ(kpar*G) || i)
     var KPar = this.pub.toBuffer()
-    IB = Buffer.concat([KPar, IB])
+    iBuffer = Buffer.concat([KPar, iBuffer])
 
     // FIXME: Dislikes buffers
-    I = HmacFromBytesToBytes(CJS.algo.SHA512, Array.prototype.slice.call(IB), cPar)
+    I = HmacFromBytesToBytes(CJS.algo.SHA512, Array.prototype.slice.call(iBuffer), cPar)
   }
 
-
   // FIXME: Boo, CSJ.algo.SHA512 uses byte arrays
   I = new Buffer(I)
 
diff --git a/src/message.js b/src/message.js
index 2091156..c31755e 100644
--- a/src/message.js
+++ b/src/message.js
@@ -7,14 +7,16 @@ var ecdsa = require('./ecdsa')
 var ECPubKey = require('./eckey').ECPubKey
 
 // FIXME: incompatible with other networks (Litecoin etc)
-var magicBuffer = new Buffer('\x18Bitcoin Signed Message:\n')
+var MAGIC_PREFIX = new Buffer('\x18Bitcoin Signed Message:\n')
 
 function magicHash(message) {
-  var mB = new Buffer(message)
-  var mVI = new Buffer(BufferExt.varIntSize(mB.length))
-  BufferExt.writeVarInt(mVI, mB.length, 0)
+  var messageBuffer = new Buffer(message)
+  var lengthBuffer = new Buffer(BufferExt.varIntSize(messageBuffer.length))
+  BufferExt.writeVarInt(lengthBuffer, messageBuffer.length, 0)
 
-  var buffer = Buffer.concat([magicBuffer, mVI, mB])
+  var buffer = Buffer.concat([
+    MAGIC_PREFIX, lengthBuffer, messageBuffer
+  ])
   return crypto.hash256(buffer)
 }
 
diff --git a/src/transaction.js b/src/transaction.js
index 9577e56..16fafda 100644
--- a/src/transaction.js
+++ b/src/transaction.js
@@ -153,13 +153,13 @@ Transaction.prototype.serialize = function () {
     BufferExt.writeUInt64LE(buffer, i, offset)
     offset += 8
   }
-  function writeVI(i) {
+  function writeVarInt(i) {
     var n = BufferExt.writeVarInt(buffer, i, offset)
     offset += n
   }
 
   writeUInt32(this.version)
-  writeVI(this.ins.length)
+  writeVarInt(this.ins.length)
 
   this.ins.forEach(function(txin, i) {
     var hash = new Buffer(txin.outpoint.hash, 'hex') // FIXME: Performance: convert on tx.addInput instead
@@ -169,15 +169,15 @@ Transaction.prototype.serialize = function () {
 
     writeSlice(hash)
     writeUInt32(txin.outpoint.index)
-    writeVI(txin.script.buffer.length)
+    writeVarInt(txin.script.buffer.length)
     writeSlice(txin.script.buffer)
     writeUInt32(txin.sequence)
   })
 
-  writeVI(this.outs.length)
+  writeVarInt(this.outs.length)
   this.outs.forEach(function(txout) {
     writeUInt64(txout.value)
-    writeVI(txout.script.buffer.length)
+    writeVarInt(txout.script.buffer.length)
     writeSlice(txout.script.buffer)
   })
 
@@ -297,7 +297,7 @@ Transaction.deserialize = function(buffer) {
     offset += 8
     return i
   }
-  function readVI() {
+  function readVarInt() {
     var vi = BufferExt.readVarInt(buffer, offset)
     offset += vi.size
     return vi.number
@@ -307,7 +307,7 @@ Transaction.deserialize = function(buffer) {
   var outs = []
 
   var version = readUInt32()
-  var vinLen = readVI()
+  var vinLen = readVarInt()
 
   for (var i = 0; i < vinLen; ++i) {
     var hash = readSlice(32)
@@ -316,7 +316,7 @@ Transaction.deserialize = function(buffer) {
     Array.prototype.reverse.call(hash)
 
     var vout = readUInt32()
-    var scriptLen = readVI()
+    var scriptLen = readVarInt()
     var script = readSlice(scriptLen)
     var sequence = readUInt32()
 
@@ -330,11 +330,11 @@ Transaction.deserialize = function(buffer) {
     })
   }
 
-  var voutLen = readVI()
+  var voutLen = readVarInt()
 
   for (i = 0; i < voutLen; ++i) {
     var value = readUInt64()
-    var scriptLen = readVI()
+    var scriptLen = readVarInt()
     var script = readSlice(scriptLen)
 
     outs.push({