PhantomJS does not implement `Object.assign` which is how we were updating the state immutably. I've switched it over to use the ImmutableJS library instead.