It's still extremely raw, but I've done some work on decentralized access to sci-hub. Given an index of scihub ID <> DOI which can be generated from the DB dump made available by libgen https://github.com/frrad/scimag it's possible to selectively download only the parts of the torrent required to get the article you are looking for.