adds requirements file
a lot of improvements