κDOT: A DOT Calculus with Mutation and Constructors