* First draft of a11y fixes.
* Amended results title
* Amended results title (again)
* Back to top keyboard operation
Removed the 'data-role="top"' attribute, which implemented a cool animation to scroll to top but prevented the default behaviour, resulting in the keyboard focus not going back to top.
* Options Button
Fix to have a working options button, but using the mouse only. This is not a good solution because it cannot be operated via the keyboard.
* Fixed options menu css.
* Results view layout changes
* Undoing layout changes
* Graph layout fixes.
* Skip Rules Link
Added a link to skip the list of rules, which can get very long and annoying for any keyboard user not interested in selecting a rule. Most probably, implementing a collapsible list of rules would be a better solution here.
Co-authored-by: Carlos Muncharaz <carlos@muncharaz.eu>
Due to the routes being defined in the wrong order, certain urls (e.g. `/tasks/:taskid:/edit`) are being captured by the results route instead (e.g. `/tasks/:taskid:/:resultid:`). This is causing the wrong method to being called with parts of the path like `edit`, `run`, etc. being passed as an argument to ObjectID(). As these are not valid MongoDB IDs, the method displays instead an error message:
> Argument passed in must be a single String of 12 bytes or a string of 24 hex characters
Also change the path to the favicon image to be not relative, as this is causing a `favicon.png` string to be sent as an argument to ObjectID() when visiting certain pages due to the previous issue.