add xhr service

@kylerush 

steps to test:

-go to route /account/signin to drop cookie

-refresh homepage, the utility nav should be visible with user info and experiments

-all failed validation, parsing, and requests are logged to segment.io in the handleErrors function in the service
-in the closure at the bottom of the user-state.js properties are passed along with the path and HTTP verb.  The properties determine what data will be validated. The handle errors function expects the mapping of the properties to be the same as what will be in the response. 

- if would like to see errors logged go to the handleErrors function and validation functions and console.log the error messages, making paths fail, or putting invalid json in the endpoint files. 

-utility nav dom updates are being pushed to the que in the untility-nav.js inside of assets/js/components
@dtothefp production doesn't have this mouse leave function. you actually have to click outside the dropdown to close it. can you try to mimic that behavior? otherwise if this is just going to be a hover based dropdown i'd rather it all be done in css and not javascript.