Adding bug checks, and updates to event flow.

- Added check to see if multiple current_user.primary_service_cats are
  included in the stored cat_event_user which means the admin comp'd or
  discounted the user twice.  If this is the case throw an error.

- Store purchased information on user.