Separated Json agent + new Website agent

I've done two things:
- Separated the Json agent
  It implementation as a part of the Website agent was rather alien to the html+xml part
- Website agent now works slightly different
  At first, it extracts elements corresponding to events, and after that it extracts data from these elements.
  This implementation fixes error with different number of retrieved with selectors data
  If selector for root elements is not set, whole element is considered a root element. So, only one event will be extracted.