Factor out schema model into its own package.