Electromagnetic Vibration Energy Harvesting Devices: Architectures, Design, Modeling and Optimization