Add start of timer module

For now it only holds one callback function, 'asap'. This is used
for doing a callback as soon as possible from the main loop.
Moonscript: Lex function declarations
BufferLine: Add .byte_start_pos and .byte_end_pos
Allow unsetting a config variable from UI
Adjust text modification callbacks position to be 1-based
Add initialization checks for CompletionPopup
Emit text-{inserted,deleted} from buffer

Also include information whether the modification was part of
an undo or a redo.
Add text reflowing support (hard-wrap)

Will automatically reflow paragraps to wrap at the set column
(as set by config.hard_wrap_column) if config.auto_reflow_text
is set.