Be less intrusive overwriting Kernel#warn

Overwriting Kernel#warn is incompatible with many existing libraries. This pr amends that by calling the overwritten method if we don't receive the arguments we are looking for.