Switched implementation of filters to js
- This makes it easy to extend the filters by the user
- There wont be an error if one of the macro functions doesn't uses a
  filter that isn't in js as long as that macro isn't called in the js
  code
- When reimplementing many of the filters they were made more inline
  with the expected behaviour from python based jinja
- Need more tests and there are still several unimplemented default
  filters
- Built in tests should get the same treatment
Update version so it will install
Fixes to js now that the linter is back
Added blank placeholder for kwargspec
- Will be filled in later with actuall key word argument handlers
Changed how vars are added to the global context
- using this keywork for the global context instead of window allows the
  code to work in js environments without a dom as well as in browsers
Added keyword argument support
- If the last argument passed is an object with a subset of the expected
  keywords it will be identified as a kwargs object and used
  appropriately
Updated readme to be current with the code