Snippet Organisation

## Snippet Organisation

Allow sub-directories within snippets with arbitrary depth.

For example:

```
## My header

Markdown copy..

{{snippet: my_sub_directory/my_snippet}}

More copy...
```
Where `snippet_name` is in a `snippets/` directory in the flow root with a `.txt` extension, eg `my-flow-name/snippets/my_sub_directory/my_snippet.txt`.

**Considerations**
- File extension must be whitelisted within InputFile
- DirectoryInput  Doesn't allow directory traversal
- Easily extensible to any future DirectoryInput type like outcomes