changed powerups to implement Strategy + Factory patterns