Symplectic Generative Networks (SGNs): A Hamiltonian Framework for Invertible Deep Generative Modeling