Created by: stefanoborini
Extracted IO layer into writer and reader classes, and create model objects with support from the bundles.