Provide JS model and methods for instances

This change adds an 'mw.openStack.Instance' class which provides a high-level
wrapper around the 'action=novainstance' API module and related functionality.

To avoid having to parse URLs and traverse the DOM to gather basic information
about the instance, I chose to use HTML5 data-* attributes. It'd be nice to
have these only on the <tr> element that represents the instance, but the
current PHP API for generating the UI makes that difficult, so as a temporary
solution I added them to each 'novainstanceaction' link. A better long-term
solution would be to have PHP output only JSON (either in response to API
queries or by embedding the JSON in <script> tags in the HTML output) and leave
it entirely to JavaScript to generate and power the interface.

I based this patch on I72994dded (reboot action) rather than Iaa82800b6
(console output) because porting the latter will require more time than I can
currently commit.

Change-Id: I57a41bec5d4f1e8303258429ed53a62be64d9621