filechooser: use a NullContainer rather than a hidden parent

a hidden parent may result in a hidden dialog. instead, we use the null parent if the user doesn't specify a parent.

ref. #108