Fix a bunch of accessibility issues.

* Added missing label for "What needs to be done?" text input.
* Added `href` attributes to all `<a>` tags to make able to be focused with a keyboard.
* Replaced "double click to edit" (which can't accessed with a keyboard [or from a touch device, for that matter]) with an edit button.
* Associated the TODO item labels with their check boxes.
* Always show the delete button. Showing it only when the parent `<li>` has mouse hover doesn't work with a keyboard (or from a touch device, for that matter).
* Apply the existing `:hover` styles to `:focus` as well. In general you always want to apply styles to both.
* Added the WAI-ARIA `role="button"` attribute to the buttons that are (probably incorrectly) marked up as `<a>` tags. They should really be marked up using `<button>`, but in the interest of treading lightly I left them as `<a>` tags. The fact that the `<a>` tags didn't have `href` attributes (and that they now have `href="#"`) is the clue that they are really buttons and not links.