Specify versions for dependencies

Too old or too new versions of dependencies can break a library. To
avoid this, explicitly specify versions for dependencies.