reorganize resources
implement doctrine