I would also like to see conditional/branching statements, it would provide a lot of flexibility in the way rules operate. In the meantime I've used scripts.
For your issue, can you provide more detail about how the folder structure would work? For some you may be able to use the auto-split functionality(Date, hostname, priority, source type, etc) to build your filename and path.
If those options won't work you would likely need to create a script to build you path based on the conditions you need.