Fixes issue #108

Applying knockback will require setting EntityArrow#knockbackStrength to public via ASM or Reflection; I did not do that here, but put the code in comments that would be required.
// If you don't have some kind of ReflectionHelper class, it can be done directly
// with the following, but you already know that ;)
// I'm not sure if the class and field names will work in the obfuscated environment - my guess is not
int k = 0; // will be set to value of 'arrow.knockbackStrength'
try {
Class c = Class.forName("net.minecraft.entity.projectile.EntityArrow");
Field f = c.getDeclaredField("knockbackStrength");
f.setAccessible(true);
k = f.getInt(arrow);
} catch (Exception e) { }
// finish with code for handling knockback