Add vala-mode

Closes #1978, also see #1205