Hi,
i haven't work with AVR microntrollers. i just work with pic's. but i know DS1307 very well and i have made a clock and calender with DS1307 and pic microcontroller so if you have problem with this IC, i will help you but i can't help you in code(because you work with AVR)
many sites discuss about I2C, basically it works by sending start condition, like waking up I2Cs on data line, then clock in device address, after the ninth clock leading edge read SDA for acknowledgement from I2C, if low you can now clock memory address, similar to device address wait for acknowledge and then clock out data, address is automatically incremented if you want to read further, if not then send stop condition signal