db_get_scores() returns error codes and uses args to return LL structure

Whitespace changes for readability.

Changed all info logs to debug logs. Try to allow the user to change the
logging level at runtime?
Rearrange format args to getopt() to alphabetical order.

Initially draw the screen again in main.c.
Print default names if not given, formatting, whitespace.
main.c saves scores/state when the game is over.
Move PI define to helpers.h
Draw game over screen only if we lose.
Draw ghost block after drawing game board.
Whitespace/formatting.
Implement lock timer.

Alright, so first thing's first:
  - If the game is paused, we sleep for 1 second. Not 1 game tick.

  - If the current block has a lock timer, we update the screen and sleep for
    that time. During this sleep phase, user input is accepted. And the user
can rotate or translate the block for the lock timer.

  - We now also update the ghost block after changing the current block. It
    used to be one tick behind. Now after creating a new block the ghost block
is properly displayed.
version bump
TODO changes.