Make the compilation settings mutable

* this will make it easier to set additional settings in the future
Prep for emitting compiled files to separate directories

* this is necessary to support an explicit source and output directory
Rebuild only TypeScript projects when the compiler settings are changed.
Merge pull request #29 from barakka/compiler_rebuild

Rebuild only TypeScript projects when the compiler settings are changed.
Marking compiler outputs as derived resources.
Merge pull request #30 from barakka/derived

Marking compiler outputs as derived resources.
Fixes #8 also on windows.

It seems that on windows getURI().getPATH() adds a beginning / that the js
language service does not like.
Merge pull request #31 from barakka/outside_workspace

Fixes #8 also on windows.
Fixes #11 Source directories should be explicitly tracked

* this also adds preliminary support for specifying an output directory
(but not a single output file yet)
Removing the setDerived call until we come up with something better

* this was causing a lot of .gitignore files to be created with the
default egit settings
Use a cached language service for emitting output to improve perf

* this makes the speed of emitting the output files very good (under 0.5
seconds)
* the hack for the markers is still necessary for now unfortunately
Revert my changes to language service

* I forgot that the source maps always point back to the source
directory, so copying the source files into the output directory won't
work
Removing roadmap

We'll track enhancement/feature requests via issues now since its more granular and allows for discussion.
Update grunt plugin to TypeScript 0.9.1.1
Fix NPE
Fixes #37 Rewrite the indentation logic to be more robust

* reuses the whitespace from the previous line
* adds additional whitespace to indent (just like before)
* moves the caret to the end of the whitespace (like Java)
Overhaul the prefix matcher regex logic

* escape non-alphanumeric characters
* try to handle more identifier characters in the matching logic
* do either a lower case or camel case match
Fixes #38 some bugs in the resource visitor

* fixes an NPE
* fixes a bug with incorrectly ignoring resources that shouldn't be
ignored.  this is less efficient but more correct
Remove unnecessary end element
Fix the filtering of source files in the builder

* definitely missed this when writing the source folder code
* credit to barakka for catching this and coding up a suggested fix