Update porterbox to use beautifulsoup

Not only is the resulting code much cleaner, but the results are
actually accurate now.
Add requirements file
Add README