Expanded "new()" to allow populating data.