Revert "Firefox does not like setting range to..."

This reverts commit a127c16519457e246fe639694ab34ef4a4abb3e4.
Fix #181

In firefox 31 with two consecutive newlines it would remove the first
div but the 2nd break on backspace (with ids added for clarity):

<div id='line-1'><br id='br-1'></div>
<div id='line-2'><br id='br-2'></div>

would result in:

<div id='line-1'><br id='br-2'></div>

Line 1 would incorrectly not rebuild() since the outerHTML did not
change. In FF31 a node can have a non-null parentNode even if the node
has been removed from the DOM. Thus our check if a rebuild is necessary
became insufficient. We now check all leaf nodes are descendants of the
line node, not just a parentNode exists.