Added Unlocked <: Lock
Made Reader extends (() => A)
Added Shared.update & Update which allows Shared to be updated via an action