Feature/folder new

This is the client PR that goes along with folder implementation.  I've included some of Xiyang's previous PRs in this one.  The individual commits in the PR are pretty easy to digest I think, but again, there are too many commits for one PR and this should've been done as multiple PRs  @stevesherrie @alex-deaconu please review.