Added XP/CP events and made some other changes

fixes #260
fixes #302
fixes #306
fixes #309