Directory auto-complete.

You're probably right about the array, there was a hard limit so it made some sense to pre-allocate, but in retrospect using `append` is probably preferable.

`filepath.Glob()` returns files as well as directories. We are only looking for directories. If there's an equivalent that only returns sub-directories then it would be worthwhile, but if not it would mean testing potentially thousands of results for type. Having 100+ subdirectories is far less common so getting them all will usually be quite efficient.