Update controller methods to be all virtual

Fix #596
ya wierd, I checked and it doesn't. Wonder if github is using a non-monospace font