Updated login service to allow customer logout and to reprocess the Cust...

...omerState and CartState when a customer is logged in or out. Also updated CustomerStateRequestProcessor to use authentication.getName() instead of request.getUserPricipal().getName() so the latest authenticated username is always used.