Implement -performActivity

Previously the code performed the activity in
-prepareWithActivityItems:, which isn't how you're
supposed to do these things. Thanks to @osteslag for
catching that one.