EOL normalization

The repo is currently in a state of inconsistent end-of-line (EOL)
character usage.  This commit attempts to fix it as recommended by the
manual gitattributes(5).
Fix file permissions
Add cscope output to .gitignore and properly exclude Python bytecode
Really remove output files under `output/` directory

It is not enough to just exclude them in .gitignore rules.  They must be
removed from the index so that they are no longer tracked in the future.
The `output/` directory now includes its own .gitignore file, so that
the directory will be created when doing a checkout.  This helps prevent
path-not-found error when running class from the repo directory.
Fix the `clean` target in default Makefile

The `clean` target now cleans the `class` executable file.  It no longer
requires the (unnecessary) `.base` target.