decorator pattern first implementation. computer constructor added