Some more refactoring and moving things around plus implemented some methods to enable checking if the jslist and vectors of them match for debugging the logic works.