Use vinyl and vinyl-fs to handle files

Fixes #55.