Load the rules from rawgit.com

This proves that we can host our rules on rawgit.com. NOTE that it only works
because rawgit appears to set the `Access-Control-Allow-Origin` header to `*`.
Simplify by using object properties instead of dictionary lookup.
Extract a function to process a single rule.
Remove check for already explained transactions.

Our Chrome Extension is only active on URLs for *unexplained* transactions and
so this check is unnecessary.

Although this change makes the JS less useful when used as a bookmarklet, we're
about to introduce a call to a Chrome API function which will mean it won't be
possible to use the JS as a bookmarklet anyway.
Move local variable declaration closer to where it's used.
Extract function to process all rules.
Make rules URL configurable via options page.

If there is no URL set then the script will probably blow up horribly, but
we plan to tackle that later.