Replaced init() methods with initialisation lists and constructor functionality