filesystem-change-evt tests: let error through when success is required
move udp tests out of weird nesting within file tests
fix doc typo
streamline some paths for equality and hashing

Cuts about 1/3 of the time for a string-hashing microbenchmark
provided by Pedro Ramos:

 #lang racket
 (define alphabet "abcdefghijklmnopqrstuvwxyz")
 (define (random-word n)
   (build-string n (lambda (x) (string-ref alphabet (random 26)))))
 (define words (for/list ([k 1000000])
                 (random-word 3)))
 (define d (make-hash))
 (time (for ([w (in-list words)])
         (if (hash-has-key? d w)
             (hash-set! d w (add1 (hash-ref d w)))
             (hash-set! d w 1))))
filesystem-change-evt: report inotify_init() error correctly
equal?: remove redundant `eqv?` test
improve docs for `identifier-binding-symbol`

Closes PR 14659
regexp-match: tune chunking of UTF-8 decoding

A `string-split` on a big string with lots of small matches sends the
regexp matcher a big string many times. Decoding 1024 bytes each time
is too much. Decoding 32 bytes is be a better trade-off between
chunking for large matches and being lazy for small matches.

For example, on a 60MB string with a space every 15 characters or so,
splitting on a space is about 3 times as fast with this adjustment.

I tried a few chunk sizes, and 32 worked the best in my experiments.
Naturally, as more bytes are read, the chunk size ramps up, so it's
a question of initial size; larger matches are relatively insensitive to
the initial size (so, again, it makes little sense to cater to large
matches with a large initial decoding size of 1024 bytes).
Send a final, empty chunk as required by RFC 2616 in http-conn-send!
net/http-client: don't send a 0-sized chunk that isn't a terminator
fix doc typo
update “Installing a Language” section to refer to package manager
doc typos
Revert label phase check, do correct thing

Thanks to Matthew for advice
Fix `inherit` in methods without type annotations

Uses of inherited method names inside other methods that
didn't have type annotations didn't work properly.
macro expander: fix `identifier-binding` on fully expanded module

Fix the case of an identifier that is used as a binding in a module
but originated from a different module.
The implementation of `#%top` within a `module` has, for a while,
required that the identifier wrapped by `#%top` not have a local
binding. Change the documentation to match the implementation in that
way. (Since local binding in an identifier's lexical information
contributes to its identity as a top-level binding, that specification
of `#%top` would make sense everywhere, but I've left the top level
alone for backward compatibility.)

Also, change `local-expand` to never introduct `#%top`
wrappers. That's a little more consistent with what `#%top` has
evolved to mean, and it specifically works better with
`local-expand/capture-lifts`.

Closes PR 14635 and PR 14654
scribble: fix spacing after a 'compact enumeration
close hole in chaperone implementation

Problem, example, and solution from Sam; see the dev mailing-list post
on 24-JUL-2014.

When a chaperoned accessor, mutator, or property accessor is used to
chaperone a struct, the chaproning procedure must not be able to
see things that the chaproned accessor, mutator, or property accessor
would not allow.
macro expander: fix `#%top` via `local-expand`

Fix bug in b25a2b83ba that breaks the teaching languages.