Change return type of init method to instancetype