Refactored core of tmux auto-completion script

- The "complete" function in the auto-completion script has been
  refactored to improve readability and simplify the tokenize son
  process while making it easier to add new tokenizing expressions.
- A couple of vestigial list ranges ([1:]) have been removed. In the
  first, non-committed implementation of the "complete" function, the
  first line of the context was presumed to be the incomplete fragment.
- Exceptions thrown by "main" are no longer caught.