table: Use upstream table selection behavior
Rather than manually implementing table selection behaviors, use those provided by upstream TableView. This ensures things work in tree view mode, it gives us interrupted selection and generally improves behavior.