feat(lock): default lock behavior is to lock only if lock is free

When a ressource is already locked, if you try to lock, you will not be
able to lock.

You get the lock result in the `.lock(cb)`, `cb(err, res)`

+ some refactor and style changes
+ removed references to user, userId, lockerId, resourceId
+ removed obvious comments
+ updated readme
+ removed unserializeUser, this do not belongs to locky API
+ jsdoc enhancements
+ jsdoc @param have lowercase types, like advised in jsdoc doc

fixes #1
fixes #2
fixes #3
fixes #4