Uniform initialization everywhere + some refactoring