Add vala support, closes #41