Glyph actions

Covers https://github.com/KSHSK/WAVED/issues/227, https://github.com/KSHSK/WAVED/issues/206, https://github.com/KSHSK/WAVED/issues/286, https://github.com/KSHSK/WAVED/issues/295

Edit: Incidentally also covers https://github.com/KSHSK/WAVED/issues/269
There was no need to change this from `items.push.apply(items, widget.viewModel.subTargets);` Using apply pushes each item in the array. The difference is that this adds the items to the same array `items` and doesn't create a new version like your code does.