Allow data to be passed with constructor