Change output structure of "kpm pack"

- global.json and packages folder goes to approot
- Main project & project dependencies go to approot\src
- Extract static files from main project into public app folder
- Generate k.ini which contains APP_BASE

parent #422 
See the `contentFiles` (which is constructed from `project.ContentFiles`) above. It only contains files because `PathResolver.PerformWildcardSearch(path, pattern)` doesn't return directories, even the directory contains a file which matches given pattern. So we have to explore files under a directory in order to know whether we should include this directory.