The white gunman who shot and killed three black people at a Dollar General store in Jacksonville, Florida, was identified as a 21-year-old who bought his guns legally and had no criminal history, local law enforcement says.