To me at least, `Runnable` implies some level of threading, which isn't what the action handles. As such, I propose using `Supplier<Void>` instead. This can be done after #512 is merged.