Some extra @modifies directives
Fix copy on write for MixedDat
remove overzealous addition
Missing string cast
Make the decorators proper
Merge pull request #353 from OP2/cache-fixes

Cache fixes
Make matrix assembly a user-facing operation

The user may call multiple par_loops to insert into the same matrix, and
will only want to actually assemble it after the last one has
completed.  Add a Mat.assemble() call which queues up (as a lazy
execution) the matrix assembly callback to allow this.
Add note on matrix assembly to concepts doc