#23 first step: separating instance- and config builders from their actual implementation.