[core] Add BeautifulSoup and have requests use it

Replace charade with BeautifulSoup which has an MIT license.
BeautifulSoup can also use chardet just in case.