Added push, removed second pull, added code explanation