Fix 309

This adds a special kind of `eclipseaction`s that run asynchronously through a new command named `eclipseuiaction`.
This enables a few interesting commands:
```
eclipseuiaction eclipsegotoimpl org.eclipse.jdt.ui.edit.text.java.open.implementation
eclipseuiaction quickdiff org.eclipse.ui.edit.text.showChangeRulerInformation
eclipseuiaction showtooltip org.eclipse.ui.edit.text.showInformation
eclipseuiaction ctx org.eclipse.ui.activeContextInfo
eclipseuiaction rulerctx org.eclipse.ui.edit.text.showRulerContextMenu
```