Create the persistence layer

@malukenho see again and tell me what do you think... =D