Added TODO comments
Minor/ignore - Extracted common regex out into variable
Support negative indexes when setting caret position
Support negative indexes when setting range
Minor - Added optional arguments to Range() constructor
Added tests for caret insertion in textareas
Added range getter tests for textareas
Made range setter's second argument optional