Code highlighting improvements

* Better submodel highlighting
* New node attribute to distinguish the submodel
* Improve markall function to allow stacking multiple calls