Validate tag names similar to repository name validation; add tests

Addresses #7943

Docker-DCO-1.1-Signed-off-by: Phil Estes <estesp@linux.vnet.ibm.com> (github: estesp)
can you do a `t.Fatalf` here and no continue