Add desktop-registry-list-desktops

This new command shows a list of all the registered desktops in a nice
tabulated format.
Add some management functions to desktop list

This commit changes some of the interactive functions to first look if
the desktop list is being shown and, if so, if there is a desktop
specified under the cursor. If either of these conditions is not true,
they fall back to asking the user for a name, as before.
Use nondirectory instead of base

This way a project directories with a `.' (dot) in them won't have the
last part stripped.
Update docstrings
Change internal name to dreg

Function names starting with `desktop-registry--' were getting a little
long.
Reorder functions/variables

Place the internal `dreg--' functions and variables first.
Add URL header
Make tabulated-list-revert-hook local

This keeps it from interfering with other `tabulated-list-mode'-based
modes.
Update NEWS file
Fix copyright, bump version