In 300 words or more explain the similarities and differences between ionic, covalent, and metallic bonding.