Always send user agent header

For https://github.com/theodi/shared/issues/306

I've basically added a new class called ODIbot which includes HTTParty, meaning if we ever want to change the user agent header, we only need to do it in one place. It also takes care of caching, something which we should have been doing, but wasn't set up properly. I've set it to expire after 5 minutes, working on the assumption that if people spot something is wrong on their server, it will take about that time to fix.