Rewrite build rule topic
Rewrite build rule topic

Summary:
- Reinforce the idea that a build rule must explicitly specify all of its inputs.
- Include that the output from a rule is not only a function of the rule's inputs, but also the build configuration.
- Direct the user to our TOC in order to discover what build rules are available.
- Clarify that build rules can--at least in some cases, such as genrules--produce more than one output file.
- Clarify that--in some cases--a build rule might list dependencies (`deps`) that are //not// required for it to build. However, in the cases where these dependencies //are// required, the dependencies are guaranteed to be built successfully before Buck attempts to build the dependent rule.
- Provide more information about genrules: clarify that a primary purpose of genrules is to work around limitations in built-in rules **;** list and link-to all the extant genrules **;** call out that genrules are one of the special cases where a build rule produces more than one output.
- Remove the mention of Python from the **Macros** section; we are moving to Skylark/Starlark.
- Remove the text that suggests that users should define macros in the build file; that is no longer consider best practice.

fbshipit-source-id: ce6af9d48c

JoelMarcey/buck,Addepar/buck,zpao/buck,JoelMarcey/buck,nguyentruongtho/buck,romanoid/buck,JoelMarcey/buck,SeleniumHQ/buck,SeleniumHQ/buck,brettwooldridge/buck,Addepar/buck,Addepar/buck,nguyentruongtho/buck,brettwooldridge/buck,JoelMarcey/buck,brettwooldridge/buck,rmaz/buck,facebook/buck,kageiit/buck,SeleniumHQ/buck,Addepar/buck,brettwooldridge/buck,Addepar/buck,nguyentruongtho/buck,romanoid/buck,romanoid/buck,SeleniumHQ/buck,Addepar/buck,facebook/buck,brettwooldridge/buck,rmaz/buck,romanoid/buck,kageiit/buck,brettwooldridge/buck,SeleniumHQ/buck,kageiit/buck,SeleniumHQ/buck,romanoid/buck,JoelMarcey/buck,facebook/buck,rmaz/buck,nguyentruongtho/buck,romanoid/buck,zpao/buck,SeleniumHQ/buck,brettwooldridge/buck,romanoid/buck,SeleniumHQ/buck,facebook/buck,rmaz/buck,facebook/buck,romanoid/buck,romanoid/buck,SeleniumHQ/buck,facebook/buck,Addepar/buck,rmaz/buck,zpao/buck,kageiit/buck,brettwooldridge/buck,SeleniumHQ/buck,romanoid/buck,facebook/buck,kageiit/buck,kageiit/buck,SeleniumHQ/buck,zpao/buck,brettwooldridge/buck,SeleniumHQ/buck,romanoid/buck,brettwooldridge/buck,rmaz/buck,brettwooldridge/buck,rmaz/buck,Addepar/buck,rmaz/buck,nguyentruongtho/buck,brettwooldridge/buck,romanoid/buck,Addepar/buck,zpao/buck,rmaz/buck,JoelMarcey/buck,JoelMarcey/buck,JoelMarcey/buck,romanoid/buck,JoelMarcey/buck,rmaz/buck,Addepar/buck,Addepar/buck,rmaz/buck,JoelMarcey/buck,zpao/buck,JoelMarcey/buck,JoelMarcey/buck,SeleniumHQ/buck,Addepar/buck,nguyentruongtho/buck,brettwooldridge/buck,kageiit/buck,nguyentruongtho/buck,rmaz/buck,rmaz/buck,zpao/buck,JoelMarcey/buck,Addepar/buck