Persistence method 'update' shouldn't fail if no block passed

It should be possible to use 'update' to change and save a dynamoid record without passing a block to the method.  This change simply checks if a block has been passed before trying the yield -- without the check the yield can fail.  A spec has also been created.