Genetic and molecular aspects of metal tolerance and hyperaccumulation