New actions data approach

* Addressed the issue with data not being passed over to the AJAX request.
* Now using a common data object for the query and the body (the old `data`). Displaying a warning when using the old query approach.
* Converted the actions.js file to TypeScript, for all it's worth.

Addresses #190, #194.

<!---
@huboard:{"order":2.0,"milestone_order":197,"custom_state":""}
-->

I prefer and I think it's more performant to do
`args.data = args.data || {};`