Actually, I don't see how this can work. You have classes (for example "data" and "persona") that include themselves inside their own definition. Doesn't this make a recursive definition? How does the compiler ever know when to stop?
Try re-structuring your classes into smaller, more manageable definitions, then try it again.
Ringo