MDL-44219 Atto: Convert selection logic to use Rangy JS Library

This removes alot of complex, hard to test, hard to debug code from the editor so
we can focus on the things we want to spend time on. Rangy seems a good choice for
browser support, stability and features.