add goroutines to use cores better, hopefully