Install function for testing

Following discussions about testing the install script and @ljharb's will to have many small pull requests, here's the first one :)

What it does:

* wraps the code of the `install.sh` that was actually performing the install into a function
* The function is executed at install but __not__ during tests
* First test for the install script (_is the function defined?_)


Please prepend a `_` to each side of the string comparison. Also, can we pick a less generic name than `ENV`? Maybe `NVM_ENV`?