XD-2306: Ability to upload modules

A new type of ModuleRegistry that supports saving uploaded modules.
The current behavior is for that registry to not allow deletion of modules which are in exploded form, which is a nice way of not allowing OOTB modules at the moment.

An alternative will be to use a different root folder for uploaded modules
Looks like we don't honor the "xd.customModule.home" https://github.com/spring-projects/spring-xd/wiki/Modules#custom-module-registry. I'm thinking we should retire that option altogether.  If not, we should use SpEL here to check if xd.customModule.home is defined.