Schema versioning

Even though we currently output to the standard flake attributes, we should start using a schema version to allow breaking changes down the line.