Integrate Jexl into gshell-parser

Re-hookup Download monitor stuff for gshell-artifact-maven
    try to get it working for gshell-artifact-ivy too?

Create single VFS configuration component, reduce the number of objects needed at boot

Create a repo:// filesystem

Add VFS authentication support

default if no activation rules, activate all bundles

namespace muck for application.xml

add open command, only activate on osx

add activation stuff to plugin parser

how to extend URLClassLoader?

Merge Application and Branding

Better handling for Object arguments/return for commands and variable passing

CommandsCompleter doesn't complete in group, implement CommandPathCompleter

Voodoo, something cool which will load a plugin, then cache the basic details for the shell
    to function, so next time it won't need to load the plugin until a plugin command is executed
    
Add dynamic cached conversion of spring xml into fastinfoset2, just like classpath building

Add gshell-maven-plugin, to launch a gshell application from Maven, execute commands, etc.

Add custom plugin components.xml loading, say from <gshell.home>/etc/<plugin.group>/<plugin.name>/components.xml
    optional of course, but will allow for customization of the default components in the correct container

Add more fileutils commands:
    df?
    du?
    mkdir
    mv
    rmdir
    sync?