Adding folder support to api-designer.

This pull request adds ramlDirectory and related actions to the ramlRepository, and a file tree UI to support the use of folders in the api-designer. 
I think it is clearer if you inverse the condition:

```
         if (allFiles.length === 0) {
            setTimeout(promptWhenFileListIsEmpty, 0);
          }
         else if (file === fileBrowser.selectedFile) {
            fileBrowser.selectFile(allFiles[0]);
         }
```