Get the correct package name on ST3

os.getcwd() returns the directory ST was started from in ST3,
which is not what we want.
Escape literal $ during creation from selection

We were running the 'insert_snippet' command and if we happened to
create a new snippet out of ... real snippet code, stuff would break.

Yes, I actually did that.
Properly remove our etree monkeypatch
Remove passing lineseperator to CDATA handler

Its usage was actually removed by 95532ab38acc4bbeffb2b7dfdd323ccb4d38f427
so it made 0 sense to still pass it.
Revise syntax definition

- Remove special highlighting for backticks, they aren't used anywhere
  in the code
- Properly match escaped curlies
- Tweak scope names so that they actually make sense
- Only use "string" scopes where it's useful
- Match "\1" replacements, alongside "$1"
- Highlight regular expressions
Get fancy with conditional format statements
Match ${12}
Add generated sane snippet of our template

In archived packages this would not be generated automatically so it
needs to be added to the repo
Add highlighting test file
New sane snippets should not be in a scratch view

That's just stupid.
Use os.path.basename instead of split
Allow comments and empty lines in frontmatter
Uncomment scope on test snippet

I could get compiled on ST2 installs and then pop up for plain text.
Highlight frontmatter values as string again
Change test snippet's extension

As discussed in 9e9f2918bb15f13f5199d8394e8fbb3b7824ee01, it should
never get compiled at all because it might still show up *somewhere*,
even if it has no scope defined.
Merge pull request #8 from FichteFoll/master

Updates. Some fixes and mostly syntax def updates