Add a buildargs callback, see the documentation
Remove strong statement about constant.pm

There's some work going on in core that could invalidate this (lists
might actually be inlined), just remove this needless assertion.