Understanding context in go