I'm self-taught and I can only comment on things I have used before, and I have never used prototypes. Tbh I don't even know what it does :D
If I understand your usecase correctly I think it can be done with classes, but I have no idea if it should be done with classes.
No harm done in trying it out. Make up a small test-case, sink an hour or two into it and see if you get stuck somewhere.