Attempt type conversion in assert.Equal

If the two values being tested are of compatible types, convert one
value to the other's type before comparing them. This allows
`assert.Equal(int64(123), uint64(123))` to pass.
Merge pull request #54 from jbowes/master

Attempt type conversion in assert.Equal