Refactoring Tools + cleanup

Small refactoring of Tool's cursor interface + utilities + authorship