[#221] Pod::Spec#public_header_files accepted and validated by `pod spec lint`
[#221] Pod::Sandbox#build_header_storage and Pod::Sandbox#public_header_storage

Those methods return Pod::HeaderStorage instances, managing respectively build headers and public headers.

Those objects replace and encapsulate former Pod::Sandbox#headers_root, add_header_file, add_header_files and header_search_paths methods.

For instance, instead of sandbox.header_search_paths, write sandbox.build_header_storage.search_paths.
[#221] HEADER_SEARCH_PATHS value comes from the new variable PODS_HEADER_SEARCH_PATHS. PODS_HEADER_SEARCH_PATHS is set to public headers search paths in Pods.xcconfig, and to build headers search paths in Pods.xcodeproj.
[#221] code cleanup
[#221] robustness against nil file lists (such as public_header_files)
[add] ability to specify :branch in Podfiles and Podspecs
[fix] small syntax error
[Readme] Update search example.

Switching to `json` because `ASIHTTPRequest` contains subspecs which are confusing for an illustrative purpose.
Merge branch 'master' into develop
Merge branch 'master' into develop
[Rake] Update CocoaPods-version.yml on release.
[Specs] Don't update master repo fixture.
[Specification] Show the spec for top level attributes informative.
[Platform] Support initialization from another platform.
[Linter] Use the deployment target of the specification.

Closes #304.
No need to run `pod setup` manually. Closes #315.
Rubinius on Travis does not seem to pickup the UTF8 default external encoding.
[Docs] Preliminary support for YARD.
Merge branch 'develop' of github.com:CocoaPods/CocoaPods into develop

* 'develop' of github.com:CocoaPods/CocoaPods:
  Rubinius on Travis does not seem to pickup the UTF8 default external encoding.
  No need to run `pod setup` manually. Closes #315.
Explicitely read external source files (specs|Podfile) as utf-8.