receiver merged with Client_v2

have added information to help understand the code better.