I kinda created a library that does what @Ravage said there. It's not entirely finished yet buy I pretty much have all the basics done. I'm just wondering, if I did release this, would it be sort of useful?
Edit: I actually don't care if its not useful anymore. Here's the library ID: s8lbNyRJ0az3PbZ3Wjv0DaAOqjiyezGR9iQkIChsgC8
let me know if you have any questions on how it works. I'm not gonna make a documentation about it.
Edit
#2: Actually, I might create a documentation