They are based on entirely different genes. Blue is genetically Bl/bl Lav/Lav; lavender is bl/bl lav/lav. Blues in the US are required to be laced. Heads, hackles and saddles are darker. Lavender is evenly coloured throughout, and is usually a lighter tint.
Self blue is lavender. Its just a confusing term that they use in the US. Its called self blue because a lavender bird must be homozygous (have 2 lavender genes) to display lavender, but lavender birds will breed true. Breed a lavender to a lavender and you get all lavender all the time.
Blue is an incomplete dominant so the bird must have one blue gene and one not blue gene to display blue coloring. A blue bred to a blue will produce 50% blues 25% splashes and 25% blacks. A splash actually has more blue genes than a blue bird. blue dilutes the black so mush on a splash that it is nearly gone. A splash bred to a black will produce 100% blue offspring, so you are set to have all blue chicks from your pair.
There are other differences between blue and lavender, most notably that blue is a diluter of black only, red parts will stay red, but lavender is a diluter of both black and red.
Since this is the case, why don't hatcheries breed their birds this way? I wound up with a blakc & a splash when I wanted 2 blues. MPC's website says that they get 50% blue, 25% black (bingo!), and 25% splash (bingo again!).