Added AbstractPlayerAction and made existing PlayerActions extend from it, closes #90.