Smart list creation based on typed input

Typing "* " or "1. " at the beginning of a line creates an unordered (resp. ordered) list.

Note that this does not do any transformation on paste, only typing.