added basic error handling + goroutines #1