Update requirements.txt

- Add missing packages

- Give an upper bound for packages that use a versioning system that
  include patch numbers

- Use strict version numbers for the rest