xblock-external-ui: Add XBlock API call to render XBlock views

@cpennington @nedbat @ormsbee Can you have a quick look to check that I'm on the right path with this? It seem to work well, rendering either individual blocks or verticals containing both XBlocks and XModules. If that's the correct approach, I'll flesh it out more, add tests and start working on the client side, but I could use a sanity check : ) Thanks!
Why not use the `JsonResponse` class here? Also, can we indicate the error using an [HTTP status code](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes) instead of in the body of the request, or is there existing Javascript that assumes that the request always returns status 200?