adding initial client parsing implementation and unit tests