fixing how we detect iphone
Fixing android problem with setting caret within keypress

Closes #41
Closes #50
Closes #85