reorganize into Crypto.jl module