Created polyfill for EvenOdd winding rule.

There are browsers which do not support a winding rule param to fill,
clip and isPointInPath. This polyfill tests for it, and replaces the
methods so that they ignore the param in case of exceptions.

This allows not to catch the exception in canvas.js which would prevent
optimization by JS engines.

This fixes #5458
I suggest to store the fill and clip methods in a variable instead of poluting the canvas's prototype with extra properties, and then use `fill.call(this);` instead of `this._fill();`