Add a better error message for dying on import clobbering
Add tests for Export clobbering to basic.t too
Add an 'after' callback

This will come in handy for things that need to find out the complete
list of constants, or emit something when we define these constants.
Add support for a stash

Here you can put all manner of shit, e.g. type checks that you can check
in the "after" to make sure that the value you've just generated with
validates.
Don't regenerate constants if someone subclasses the user

See the embedded comment I added for details and rationale.
syntax adjustment, doesn't make sense to align => here
POD: Remove redundant "e.g." in documentation
Remove redundant "unless"

We're never going to reach this code by definition because of the elsif.
Don't export things that are only used internally to other constants

Don't be messy and export things into the user's namespace unless it's
explicitly requested, i.e. provided on the import list. Not sure I like
this API at all.
Don't export things that are only used internally to other
constants (again)

This API I actually like, instead of adding an extra call() argument we
just do this with local() now.
t: move call counter assert to a variable
Document how you can and can't return lists
Reword the docs a bit, hopefully better now
Fix indenting in synopsis example
Implement the TODO for panicing when the stash doesn't exist
Correct recursive behavior

Before this the override support was quite broken. If you were
overriding a value "foo" any ->call() calls within the override sub
wouldn't fleshen *any* constants, but actually we just didn't want to
fleshen the "foo" constant.

So turn $GETTING_VALUE_FOR_OVERRIDE from a boolean to a hash where we
localize keys that we're currently overriding. This should take care of
overriding complexity of any depth, i.e. you can try to fleshen "foo"
whose override callback does $ctx->call("bar"), the override callabck
for "bar" can in turn call another override etc.
Add tests and comments for interop with constant.pm
Don't die when someone accesses a non-existent stash

This makes it much more convenient to write the code explained in the
comment.
Add more examples to the synopsis

Using constant.pm constants is now covered, along with 'stash' and
'after'.
Nuke t/exporter-compat.t

It didn't test anything we didn't test for in t/basic.t, which by they
way isn't very basic anymore, so just rename it to t/tests.t