I'm wondering if this is a correct approach. I think the less code that allows implicit static-array to dynamic array conversion, the better. In particular, currently, this function (mostly) never worked taking static arrays anyways. My new code adds *support* for them, and I'm not sure that's the right direction to go in?

Maybe it would be better to simply reject them?

```D
Appender!(E[]) appender(A : E[], E)(auto ref A array)
if (!is(A : E[N], size_t N))
{
    ...
}
```
I can't say there'd be no breakage, but it *should* be minimal... And it's the only way I see to make `appender` certifiably correct...

Thoughts?