Improve vars handling and features.

The vars file now calls set_var() so the preference of settings from
highest to lowest is now command options, env-vars, then 'vars' when
present.

The locations to look for 'vars' is now in order of -vars on the
command-line, $PKI_DIR, $EASY_RSA, and finally the easyrsa program
location.

Changed the method to skip vars searching to $EASY_RSA_EXPERT
exclusively (setting $EASY_RSA alone no longer will skip it.)

Warn and abort if attempting to source 'vars' outside of the easyrsa
detection process.