create new terminals with POST /api/terminals

instead of GET terminals/new

to be consistent with creating new notebooks.

We had to stop using GET notebooks/new
because browsers would create new notebooks when making preview thumbnails for commonly visited pages, etc.
I assume the same issue would apply to terminals
Make a window immediately, and set its location on response

Avoids the need for async:false
Close new window on error creating terminal
Merge pull request #6854 from takluyver/post-new-terminal

Create new terminals with POST request to API