Use key-based access rather than positional on related nodes

Some backends do not guarantee ordering of elements, so positional access
is error prone.
Check if file stats implements st_birthtime prior to use

st_birthtime is only available on BSD systems. This now falls back to
st_ctime.

See http://docs.python.org/2/library/os.html#os.stat