Enable subclasses to customize node/arcs content/labels

Change-Id: Id1d54e7a4f1061910b319b36e70a46f368be922e
Add possibility to display icons in nodes

Change-Id: I086b08de858942c599522571798a81202f17cd2f
Make the layout engine pluggable
Decouple presenter from model

Move model proxy classes to shared package
Mode fromNode/toNode attributes directly to ArcProxy

Change-Id: I3a51b904fee4ced4f95202798fb73a59fc131688
Move width/height from shared model to client-side presenter

Change-Id: I04e150a0b50ac9dd23181a39a8c1058aeb3b3dcf
Replace removedId field with parameter

Change-Id: Icb448b8fd7e5d700cedd7b13dab21d30711a5508
Rename EngineModel to LayoutEngineModel

Pull up model API to the inteface

Change-Id: Ie1acfc83fdd7ffd431679281959b8dbf65a79667