This looks quite interesting indeed - as complicated as necessary, yet as simple as possible. I think the name Exporter::Dream, if used on cpan, would be less than optimal, though; imo, a module's name should, if possible, give a concise description of what the module does - i.e., it should be as informative as possible for someone who does not know the module yet.
If it wasn't past 3 in the morning, I might actually be able to come up with a suggestion or two, too; I'll try to do so tomorrow, after a good night's sleep. :)
--
mowgli