Check password as it is typed, do not require Return.

In fact, Return just clears the buffer.  Escape does nothing.  The
password must be at least eight character long before slock starts
checking it, so if user's password is shorter, they will not be
able to unlock the screen.
Avoid #ifdef hell
Avoid code duplication on main exit path
Declare nlocks at the beginning of main
Better use of malloc
Convert README to Markdown