Delegate ID checking to backend, show errors in GUI

Remove app ID validation from the frontend because groups have made it
complicated to copy the logic. Let it live in one place and handle
errors in the app creation form more intelligently. Failed app creation
will display errors next to the attributes as returned by the backend.

Fixes #500.
Fixes #547.
Fixes #560.
Fixes #116.