Fail gracefully on first System::init()

We can't construct a FEMFunction-based Dirichlet boundary before we
have an initialized solution to examine, but we shouldn't actually
*crash* in that situation.