Adsorption of heavy metal ions by various low-cost adsorbents: a review