Adding gson and intermediary changes

refining http implementation