new_variable_* reinit

perlvariables accidently changed the way new_variable_* works (and overrides any currently set variable). This commit adds tests to detect that.