GEMPIC: geometric electromagnetic particle-in-cell methods. (3rd July 2017)