Ticket #3267: mc fails to build against musl libc.

mc fails to build when using musl as the libc provider. This is due to
the CTRL() macro not being defined in <termios.h>. We could include
<sys/ttydefaults.h> explicitly but it's easier just to ensure CTRL is
defined.

This patch taken from the Sabotage Linux distro which fixes this. This
patch has also been tested and works with the OpenEmbedded build
system.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Merge branch '3267_musl_libc'

* 3267_musl_libc:
  Ticket #3267: mc fails to build against musl libc.
Ticket #3247: refactoring of status_msg engine.

Initial commit: create global timer.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(mc_time_elapsed): add new function to detect elapsed time intervals.

The author of initial patch is Egmont Koblinger.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
status_msg_t: reimplement delay usage.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Reduce update rate in the "Directory scanning" dialog.

As a result, directory scannig is faster than before.

The author of idea and initial patch is Egmont Koblinger.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(status_msg_init): repaint screen forced to remove previous finished dialog.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Merge branch '3247_status_msg_update_rate'

* 3247_status_msg_update_rate:
  (status_msg_init): repaint screen forced to remove previous finished dialog.
  Reduce update rate in the "Directory scanning" dialog.
  status_msg_t: reimplement delay usage.
  (mc_time_elapsed): add new function to detect elapsed time intervals.
  Ticket #3247: refactoring of status_msg engine.
Fix editcmd__edit_complete_word_cmd test.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>