Some changes to client architecture