Expose Less parsing as a top level feature of the less package

Converting a Less stylesheet into an AST is a valuable piece of functionality, and worthy of being easily accessible to consumers of less.js. There have been issues submitted in the past about accessing the AST generated by the LESS parser, and without copy/pasting much of the code found within `lib/render.js`, it has thus far been a difficult task.

This pull request strips the parsing functionality out of `render.js` and moves it to `parse.js`, making it a top level property of the `less` module. In the same way that `less.render` takes a less string and returns a css string, `less.parse` takes a less string and returns a less AST.

I would also like to propose having the option to have extra data attached to this AST (for example, line/column location information for tokens like rules, imports, variables, mixin calls, etc), but before I started working on that, I wanted to get your opinion on this feature first.

Thanks.