Prior posters have offered good advice. In our case, it seems that time helped a great deal. At six, DS was an intense handful, to put it mildly. It seemed as if he was always on and often, if not fully occupied by something (which, fortunately, including reading at times) he was a mess. I look at photos of him at that age now and see a ball of energy who likely felt trapped all day doing things he'd already done or didn't care to do for the required time (very bad school year).
Many, many long conversations, punishments, a new school and nearly four years later, he is a much calmer child 80-90% of the time. He's always been kind to other children, but he is now a leader with others. He still is not an easy child, but the difference over that timespan is remarkable. I think time and growth is a big part of the difference. His EF perhaps has started to catch up a bit.