Snake phylogeny based on osteology, soft anatomy and ecology