Added an ignore list option to the `readdir()` func

`readdir()` now takes a list as the 2nd argument. The `ignores`
option can be a list, `null`, or a function. Supporting both
`readdir(path, callback)` and `readdir(path, ignores, callback)` syntax.

The `ignores` list is just a simple string list, any type of advanced
regex is not currently checked.