Make sure to sort directories

This way tests work on both Linux and OS X since os.listdir() returned
directories in a different order based on the platform, thus breaking
tests under Linux.
Add Vagrantfile for testing