Feature/628 add markdown above or below

- Insert a markdown item before or after current focused item
- re-consolidate markdown on save
- if inserted item is escaped out of with no content, remove the item from the array as well as the DOM
- improvement for keyboard shortcut propagation
- add edit_permission boolean to ws_obj.state that controls insert, edit, and checkboxes (delete)
#628, #656