X-Ray Absorption Fine Structure (XAFS) Spectroscopy - A Review