Variables handling refactoring

This PR aims the improvement and the generalization of variables handling in PerforceSCM

Related Issues:
* https://issues.jenkins-ci.org/browse/JENKINS-20927
* https://issues.jenkins-ci.org/browse/JENKINS-20735
* https://issues.jenkins-ci.org/browse/JENKINS-19579
* #52 
* ...