Add basic locking support
Reflect locking in UI
Soften locking
Merge pull request #318 from unikent/feature/add-locking

 Add "soft" locking behaviour to programmes edited by standard users