1. A computer-implemented method for organizing and managing a file system on top of a content addressable object store, the method comprising: associating a record with a user content, the record including attributes associated with the user content, the attributes including at least a content hash associated with an address in the content addressable object store; dividing the user content into data objects, each of the data objects having a predetermined minimum size; generating, for each of the data objects, respective data object hashes, the data object hashes being functions of respective data object contents associated with the data objects; generating a pointer tree based on the data object hashes, the generating of the pointer tree comprising: grouping the data object hashes into pointer objects; assigning the pointer objects as leaves of a layer in the pointer tree; when the layer includes more than one leaf, constructing a next layer of the pointer tree, the construction of the next layer comprising: generating pointer hashes for each of the pointer objects, the pointer hashes being functions of respective pointer object contents associated with the pointer objects; grouping the pointer hashes into further pointer objects, each of the further pointer objects having the predetermined minimum size; assigning the further pointer objects as leaves of a further layer in the pointer tree; and repeating the generating the pointer hashes, the grouping the pointer hashes, and assigning the further pointer objects until a final layer having one leaf is received; assigning the leaf of the final layer as a root of the pointer tree; and computing a root pointer hash based on a content of the root of the pointer tree; setting the content hash to the root pointer hash; and writing the data objects to a cluster storage.