A "Package" is basically a directory in the Packages folder with "stuff" in it. What "stuff" is depends on the package. It can contain snippets, key bindings, python files, syntax definitions, etc. For a syntax file, you would save the plist version of the file as `<name>.tmLanguage`. As a simple example, toke a look at the "Text" package. It contains two files, a syntax file and a snippet. From what you are saying, it seems like the syntax file is all you really care about right now. To view files, you can use https://github.com/skuroda/PackageResourceViewer
so you don't have to manually extract everything yourself.