Added Pirate King

The way he works is that he can move to any base that is scoring. Instead of registering with every new base that comes on the field, I made this a board level event.

When the board says a base is scoring (aka in evaluateBase) it  sets the event's EventData's base to the base that is scoring and then fires the event which gets to the PirateKing.

When it is at the PirateKing, if the base isn't his current base (cause then he can't move), he is given the option of moving to that base or NULL (which is no action)

Finally added him to Minion.h and DeckConstructor.cpp