Return associative array as response from get_url()

This enables more complex behaviour, such as checking for 304
(Not Modified) status codes, which we can use to control how
often we hit the github API etc.
Use PHP github proxy in channels viewer
Split JS utils into separate reusable file

This is to enable reuse of the Ajax client.
Add HTTP client which uses 'If-Modified' header