A simple gallery backend for SilverStripe 3 with advanced directory saving rules