Separating initialization from constructors