Make the website agent support merge events

Refactoring the website agent so that it can merge events.
Maybe this method could take a base payload to merge new keys extracted via scraping, which is only specified when in merge mode.  That way you can keep the invocation of `create_event` in it.