From 46f4812ca6ad5c1b8bb769e284d72ad274d95161 Mon Sep 17 00:00:00 2001
From: Matt Traudt <sirmatt@ksu.edu>
Date: Tue, 29 May 2018 09:41:43 -0400
Subject: [PATCH] Update README

---
 README.md | 84 +++++++++++++++++++++++--------------------------------
 1 file changed, 35 insertions(+), 49 deletions(-)

diff --git a/README.md b/README.md
index 85f570c4..f439dc11 100644
--- a/README.md
+++ b/README.md
@@ -4,14 +4,32 @@
 
 It doesn't get simpler than this, folks.
 
-Run `sbws server` on the same machine as a relay with an exit policy that
-allows exiting to itself on a single port. (Notice: it won't get the exit flag)
+The scanner builds two hop circuits consisting of the relay being measured and
+a fast exit. Over these circuits it measures RTT and download performance.
 
-Run `sbws client` on a well-connected machine on the Internet.
+See INSTALL for install instructions. See DEPLOY for deploy instructions. See
+LICENSE for license information. See CONTRIBUTING for coding standards and
+contribution guidelines.
 
-The scanner builds two hop circuits consisting of the relay being measured and
-the helper relay running server.py. Over these circuits it measures RTT and
-download performance.
+The sbws documentation can be found at [Read the Docs](https://sbws.readthedocs.io)
+and
+[this onion service](http://d7pxflytfsmz6uh3x7i2jxzzwea6nbpmtsz5tmfkcin5edapaig5vpyd.onion/)
+([v2](http://sdmb3rfvp3wadu6y.onion/)).
+
+## Layout of the sbws repo
+
+- `docs/` the source of the sbws documentation website.
+- `sbws/` the source code for sbws.
+- `sbws/core/` each file contains code specific to a single sbws command.
+- `sbws/lib/` complex data structures and classes useful to one or more sbws
+  commands. If you're making a new class, it probably belongs here.
+- `sbws/util/` simplier, "make life easier" collections of functions.
+- `scripts/maint/` scripts for **maint**aining sbws and doing administrative
+  things like regenerating the website or updating the AUTHORS file.
+- `scripts/tools/` misc. scripts for users of sbws.
+- `tests/testnets/` scripts and code for running mini Tor networks locally and
+  performing integration tests with them.
+- `tests/` unit tests executed with `pytest` or `tox`.
 
 ## Boring things
 
@@ -25,13 +43,11 @@ are at the following places.
 
 [semantic versioning]: https://semver.org/
 
-In addition to the overall semantic version for sbws as a whole, there are
-simple integer versions for (i) the protocol sbws clients and servers use to
-speak to each other, and (ii) the format in which results are stored.
-Incrementing either of these version numbers requires a major version change
-for sbws. (Note that the reverse is **not** true: a major sbws version change
-does not require the integer versions for the wire protocol or result format to
-change)
+In addition to the overall semantic version for sbws as a whole, there is a
+simple integer version for the format in which results are stored.
+Incrementing this integer requires a major version change for sbws. (Note that
+the reverse is **not** true: a major sbws version change does not require the
+integer version for the result format to change)
 
 **Note**: In semantic versioning, "3.4.1-dev" comes **before** "3.4.1". With
 this in mind and assuming the current version is "3.4.1-dev": in the last few
@@ -64,11 +80,12 @@ without a major version bump. The public API is
 - **The available configuration options and their defaults**. New options may
   be added without a major version bump, but no options will be removed, nor
 will defaults be drastically changed. Examples of drastic changes to defaults
-include obvious things like flipping any boolean value or a location for data
-storage, but also more subjective things, such as increasing the target
-download time significantly (6s to 60s). Examples of an insignificant change
-include changing the default client nickname. Rule of thumb: if it is likely to
-affect results or sbws behavior significantly, it is a major change.
+include obvious things like changing the default URL for the file to download
+or a location for data storage, but also more subjective things, such as
+increasing the target download time significantly (6s to 60s). Examples of an
+insignificant change include changing the default client nickname. Rule of
+thumb: if it is likely to affect results or sbws behavior significantly, it is
+a major change.
 
 - **The name and function of commands**. The command you run to perform certain
   actions will not change in a backward incompatible way without a major
@@ -83,10 +100,6 @@ generated with `sbws generate` will not change its format without a major
 version bump. *Log lines and the output of `sbws stats` are exceptions to this
 rule*.
 
-- **The wire protocol**. The way `sbws client` and `sbws server` speak will not
-  change in a backward incompatible way without both a major version bump and a
-bump in the wire protocol version integer.
-
 - **NOT the name, location, signature, or existance of python functions**. Sbws
   is meant to be ran as a standalone program. It is not at all meant to be
 treated or used like a library. Users of sbws do *not* need an understanding of
@@ -94,33 +107,6 @@ how its code is laid out. Therefore the code may change drastically without a
 major version bump as long as the way users interact with it does not change in
 a backward incompatible way.
 
-### License
-
-This project is released to the public domain under the CC0 1.0 Universal
-license. See LICENSE for more information.
-
-## Documentation
-
-The sbws documentation can be found at [Read the Docs](https://sbws.readthedocs.io)
-and
-[this onion service](http://d7pxflytfsmz6uh3x7i2jxzzwea6nbpmtsz5tmfkcin5edapaig5vpyd.onion/)
-([v2](http://sdmb3rfvp3wadu6y.onion/)).
-
-## Layout of the sbws repo
-
-- `docs/` the source of the sbws documentation website.
-- `sbws/` the source code for sbws.
-- `sbws/core/` each file contains code specific to a single sbws command.
-- `sbws/lib/` complex data structures and classes useful to one or more sbws
-  commands. If you're making a new class, it probably belongs here.
-- `sbws/util/` simplier, "make life easier" collections of functions.
-- `scripts/maint/` scripts for **maint**aining sbws and doing administrative
-  things like regenerating the website or updating the AUTHORS file.
-- `scripts/tools/` misc. scripts for users of sbws.
-- `tests/testnets/` scripts and code for running mini Tor networks locally and
-  performing integration tests with them.
-- `tests/` unit tests executed with `pytest` or `tox`.
-
 ### Build HTML documentation
 
     pip install -e .[doc]
-- 
GitLab