!sc2 prototyped

made a pull in case someone wanted to review before merging, also i don't want to touch master branch with code written at this hour

NOTE: will only work with isjs fixed
lets have some other plugins that use such functionality to see how we can abstract it away, im doubtful right now about whether its worth it or not (seems too easy to do, and doesnt need an abstraction)