More RESTful shared workflow import.

Previous route was "POST /api/workflows/shared", this still works but should be condisdered deprecated in favor of POSTing to /api/workflows with shared_workflow_id in the payload.
More RESTful direct workflow creation from JSON.

Previous route was "POST /api/workflows/upload", this still works but should be condisdered deprecated in favor
of POSTing to /api/workflows with 'workflow' in the payload.
Work toward making workflows API use newer standards.

Convert workflow API to use new-style API decorator throughout.

Improved workflow exception handling - now more explicit status code setting and returning of raw error strings in the API. Most obvious exceptional paths out of the API are now coming through MessageExceptions of things even more specific. Add API tests for many of these exceptional conditions.

Use more helper methods to reduce method length, duplication.
Allow workflow uploads to specify publishable/importable.

Use new capabilities to improve workflow testing.