fix for firefox

1. 修复 firefox 下的 bug；
2. 完善 `getRange`，使同窗口可开多个编辑器；
3. 修复 `enter` 键行为，默认生成 `<p><br></p>` 占位符；`blockquote` 和 `pre`  block 中的 `enter` 键会退出该 block。
在的：`root.Pen = function(config) {...}`，一开始就赋值 `FakePen` 了，存在 `doc.getSelection` 再赋值 `Pen`的