DeltaJ: a delta oriented programming language with core and delta modules