ProfileScraper now returns a Profile
Fixes specs to reflect Profile instead of Hash
Updates full scrape to use Profile
Adds match_history to Profile

MatchHistoryScraper now returns an array of matches instead of a hash with matches, wins, and
losses. Profile#match_history lazy-loads data from a call to MatchHistoryScraper.
Replaces match hash with Match object
Adds lazy-loading League scraper

While LeagueScraper still returns a Hash, LeagueScraper is now designed to be called through a
Profile object.  Create the Profile, ask for Leagues, and if you want more information on a
League, that doesn't come from scraping the profile page, you call `scrape_league` or attempt to
access information not stored already.
Eager-loads League information and Match History
Merge pull request #10 from agoragames/improved_api

Improved Profile API