Disable colon in cache key

Summary: I didn't find its usage outside tests.

Test Plan:
  $ arc unit

Reviewers: epriestley

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D5645
Make file caches more flexible

Summary:
  - Allow caller to set an acceptable lock wait time.
  - If we fail to lock and don't need to hold a lock for a write, just miss the cache.
  - See discussion in D5644.

Test Plan: I think I ran it? I'll actually check this in the next diff.

Reviewers: vrana

Reviewed By: vrana

CC: aran

Differential Revision: https://secure.phabricator.com/D5657
Allow phlog($a, $b)

Summary: Like `var_dump()`. I guess we would never want to embrace the `print_r()` signature?

Test Plan:
  phlog('It works!', 'a');

Reviewers: epriestley

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D5678
Adding CFG for PHP, C-like languages

Summary:
This produces only code that can never survive compile time nor lint/checkstyle.

badassery

Implemented common language traits for C-like languages (I don't consider language derivation, only the looks of code). I learnt today: PHP = C + `$` + Classes. I know I forgot many elementary structures like loops, and three-fourth of the OO stuff. Well, it's not like somebody's going to teach programming with this CFG.

I plan to add one or two other languages and make this reasonably generate diffable output (so we don't compare a function with a class).

Test Plan:
P791
P792
P793
Run away, Java: P794

Reviewers: epriestley, chad, btrahan, DeedyDas

Reviewed By: epriestley

CC: aran, Korvin

Maniphest Tasks: T2903

Differential Revision: https://secure.phabricator.com/D5685
Adding Java CFG

Summary: This one was pretty fast to do. My Java's really rusty though (there are lectures for that currently, but I'm not attending).

Test Plan: Generated plenty.

Reviewers: epriestley

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D5692
Cleanup for CFGs

Summary: Removes unnecessary code. Also makes `applyRules` `protected` for `generateClass` and D5690

Test Plan: Generated lipsum, names, some code. Tried out `generateClass`.

Reviewers: epriestley, DeedyDas

Reviewed By: epriestley

CC: aran, Korvin

Differential Revision: https://secure.phabricator.com/D5695