Make class properties protected instead of private so that they can be used by subclasses. Access  with static:: rather than self:: so that subclasses can maintain their own instances.
Merge pull request #3874 from okonomiyaki3000/jftp-more-extensible

[#33937] Make JFTP more easily extensible