avoid entering enter a loop by allowing code to fail out after second failed compile attempt
correctly handle new components when using tooling api
support for api version 30.0

resolves joeferraro/MavensMate-SublimeText#363
resolves joeferraro/MavensMate-SublimeText#368
resolves joeferraro/MavensMate-SublimeText#362
minor testing tweaks
adds support for project-specific settings

resolves joeferraro/MavensMate-SublimeText#339
update tests for new template functionality and api version 30
Merge pull request #16 from ralphcallaway/avoid_infinite_loop

avoid entering enter a loop by allowing code to fail out after second fa...
Merge pull request #17 from ralphcallaway/use_metadata_type_tooling_endpoint_for_new_components

correctly handle new components when using tooling api
observe global timeout
ensure a single compile retry
ensure exceptions are printed
oops fix api_name issue
Merge branch 'master' of https://github.com/joeferraro/mm

Conflicts:
	lib/commands/metadata.py
Merge remote-tracking branch 'ancestor/master'