Allow to inject variables into a call to the parse method

This adds an additional `vars` parameter to the `parse` method. It allows a user to inject variables into a less string before compiling.
E.g.:
```javascript
var parser = new(less.Parser);
var vars = {
  'my-width': '50px'
};
parser.parse('.class { width: @my-width; }', function (err, tree) {
    if (err) { return console.error(err) }
    console.log(tree.toCSS()); // .class { width: 50px; }
}, vars);
```


This change is 100% backwards compatible.