Added Matrix Compatability, made various naming changes