Issue #3 : Structure for data objects using interface

Signed-off-by: Ah-Lun Tang <tang@ahlun.be>
Issue #8 : fix unresolved style parent

Signed-off-by: Ah-Lun Tang <tang@ahlun.be>