added least-squares update to OMP, sped up code, and commented