Do not log connection exceptions multiple times.

Summary: No more log spews!

Test Plan: Since the cache is down today, just tested on buck build fb4a.
Re-enable use of ##BufferedOutputStream## in ##OverwritingZipOutputStream##

Summary:
There appears to be a bug in ##CustomZipOutputStream## which only closes
entries when a new entry is put.  This leaves the last entry un-closed
which, when used with a ##BufferedOutputStream## meant that it was
never flushed to the underlying file, and the entry was unwritten.

This diff adds a call to ##closeEntry## in ##actuallyClose## which
closes any currently open entry and re-enabled use of ##BufferedOutputStream##.

Test Plan:
  ant test -Dtest.class=ZipOutputStreamTest
PBXProject: don't `name` attribute

Summary:
This isn't used by xcode and xcodeproj fails parsing when it's
present.

Test Plan:
Disabled ##run_xcproj_touch## in ##Tools/buck-project.py## and ran:

  $ Tools/buck-project.py Libraries/FBPaperAttachmentsKit
  $ /usr/bin/xcodeproj show Libraries/FBPaperAttachmentsKit/FBPaperAttachmentsKit.xcodeproj
Restart buckd if .buckversion or the contents of the buck directory with a .nobuckcheck file have changed.

Test Plan:
Add .nobuckcheck file in fb4a
buck build messenger
<change buckd script>
buck build messenger
<verify buckd restarted>
Fix style by moving closing paranthesis on their own lines to the previous lines.

Summary:
Ran these commands
```
$ git grep -l " );" | grep "^src" | xargs sed -i '{
N
s/\n\s*)/)/
}'
```

Similarly, for "^test" and " ));".

Test Plan: sandcastle
Moar styling fixes after beefing up the sed replace pattern.

Test Plan: sandcastle
Log cassandra connection failures to scuba.

Test Plan: Unit test.
Extract a Step for copying resources.

Summary: Tidy up DefaultJavaLibrary a little by extracting a Step for copying resources.

Test Plan: buck test --all
Add a buck_extension build rule.

Summary: Part one of a sequence of diffs to allow buck to be extended at runtime.

Test Plan: buck test --all
Create a setting for not flushing event listeners after buckd returns

Summary: buckd wasn't logging on buildbot because of this.

Test Plan:
Set `.buckconfig.local` to:

```
[daemon]
  flush_events_before_exit = true
```

buck build buck && $(cat .buckd/buckd.pid | xargs kill -9)

Verify chrome trace is there.
If an overflow event is generated, kill the watchman subprocess

Test Plan: Not sure...we think this is the source of zombie watchman procs on buildbot.
Wait for up to 10 seconds for .buckd/buckd.log to appear.

Summary:
This was causing failures in production last week.

Test Plan:
buck build buck
tweak code to simulate buckd.log not showing up
verify buck build buck still passes
Do not pass the main R.java package in the extraLibraryPackages arg of aapt.

Test Plan:
buck build fb4a
sandcastle
Fix Eclipse warnings.

Test Plan: No more yellow icons in Eclipse.
Remove the deprecated ProjectFileSystem.exists(String) method.

Summary: There are many methods in PFS that are marked deprecated. This removes one of them.

Test Plan: buck test --all
Add checkstlye rule for unused imports and an autofix

Summary: For whatever reason, it's not parsing the javadoc for AaptPackageResources

Test Plan: This diff