I would define precise functions for each of these operations, and write them one in each file, and put those files in the src directory, including them in the main module of the package.
module MyPackage
include("./preprocess.jl")
include("./computethings.jl")
include("./postprocess.jl")
export preprocess, computethings, prostprocess
end
such that the user can do (and what follow I provide as an example):
using MyPackage
preprocessed_data = preprocess("userfile.dat")
result = computethings(preprocessed_data)
postprocessed_data = postprocess(result)
where preprocessed_data, result and postprocessed_data are instances of corresponding structs that contain the data organized as you think is reasonable.