add options to apply formatting by file extension, file syntax, or both

I saw issue 69 (https://github.com/jdc0589/JsFormat/issues/69) and it related to something I was trying to figure out.  I like the formatting that jsbeautify does for javascript, but not for JSON.  I just find it expands things too much.  So, I wanted to be able to continue using jsFormat for javascript files, but not for JSON files.

Since issue 69 also wanted to exclude js.erb files from being formatted, I thought a good solution would be to allow the user to configure jsFormat to format files based on file extension, file syntax, or both.  This way, you can enable/disable jsFormat for a file extension regardless of the content of the file, or you can configure it to format based on file syntax regardless of the file extension.  The defaults leave the functionality the same as before the changes.

Let me know what you think about these changes.  Any recommendations?  Optimizations?