feature: added support for command-line arguments parsing

* Adding support for command-line arguments parsing
* Adding support for multiple directories to the search paths for Lua libraries
* Using Getopt::Long instead of Getopt::Std
* Adding a new test scaffold
* Adding support for specifying the nginx path (this option might be removed in the future)
Why exclude level 0? It's perfectly valid to use level 0 if possible, for example,

```
$ luajit -e 'print([[ a [=[ ]==] ]])'
 a [=[ ]==]
```