Optimize _renderObjects to take fast path if no activeGroup given
Make sure compiler can inline
Move _hasITextHandlers to canvas instance
Avoid `set` in fabric.Line#_setWidthHeight
Only call `_renderStroke` in line and circle when `this.stroke` exists
Build distribution
Version 1.4.3
Fix keyboard appearance on Android. Closes #1070
Fix IText selection with varying font widths
Prevent multiple RenderAll calls on exit edit

This fix prevents ```renderAll()``` being called for each IText instance when ```exitingMode``` is exited.  Only one ```renderAll()``` is necessary
Prevent multiple RenderAll calls on exit edit

This commit modifies the ```mouseUp ```handler to fix ```enterEditing``` behaviour, while maintaining the ability to fire ```enterEditing()``` programmatically
Prevent multiple hidden Textareas

Currently a hidden ```TEXTAREA``` is created for every IText instance and remain in the DOM forever.  

This patch creates the required textarea on demand in ```enterEditing``` and destroys it in ```exitEditing```

This prevents multiple Textareas from hanging around in the DOM which can cause slowdowns in complex scenes with lots of IText instances.
Add text:selected event
Fire text:selected on selectAll
Reduce calls to fillText/fillStroke in IText
Update itext.class.js
Remove clashing 'selected' event firing
Remove clashing 'selected' event firing
Let _getWidthOfChar() return cached values
remove IText _render()

The ```the _render()``` method for IText objects is no longer needed when since rendering cursor/selection is now handled elsewhere