[UNIVERSITY-10: Create draft architecture for software architecture cousework]

Concurrency has been added to Core
[UNIVERSITY-10: Create draft architecture for software architecture cousework]

ApplicationDataContext has been generalised by using ImmutableTuple