Allow FileLinks to not recursive into subdirectories

FileLinks is useful to display files and directories. However, it would be more useful if it could be used in a non-recursive way. This PR adds a `recursive` options to FileLinks.

An alternative way to do this would be to pass in a recursive depth limit, so that you could control the depth of recursion. But that would be more complex of a change.
This will need to be `next(walk(self.path))`, so that it supports Python 2 and 3.

Can you also add a non-recursive test case that would have caught this?