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 chain this together so that you don't query the dom for the body tag twice:

```
$('body').addClass('signed-in').removeClass('signed-out');
```