[setup] Modify boilerplate

Proper owners, readme, etc

Change-Id: I68d535d90b546746541a8c017756d8e9791bb985
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..2922b4f
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+# Rust
+/target
+.cargo
+
+# Editor
+## vim
+*~
+*.swp
diff --git a/Cargo.toml b/Cargo.toml
new file mode 100644
index 0000000..02863b3
--- /dev/null
+++ b/Cargo.toml
@@ -0,0 +1,2 @@
+[workspace]
+members = ["chava"]
diff --git a/OWNERS b/OWNERS
index 1c4ea03..de6324e 100644
--- a/OWNERS
+++ b/OWNERS
@@ -8,4 +8,7 @@
 # Syntax for OWNERS files can be found at:
 # https://fuchsia-review.googlesource.com/plugins/code-owners/Documentation/backend-find-owners.html#syntax
 
-*
+sollyross@google.com
+
+# Clay, as a backup
+wilkinsonclay@google.com
diff --git a/README.md b/README.md
index 8b90b74..815a80d 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,49 @@
-Fuchsia Open Source Template Repository
-=======================================
+# Fuchsia Language Server
 
-This repository is a template that we will use when creating new open source
-repositories for Fuchsia.
+[<abbr title="Language Server Protocol">LSP</abbr>][lsp] server for
+Fuchsia-specific languages (FIDL, CML).
+
+[lsp]: https://microsoft.github.io/language-server-protocol/
+
+## What's here?
+
+- [`/lsp`](/lsp): The Language Server implementation
+- [`/chava`](/chava): A flexible parser & utilities for FIDL in Rust
+
+See the individual subdirectories for more information.
+
+## How do I build this?
+
+All crates here use a normal Rust build process.  The LSP server itself is the
+default project for this workspace, so you can simply run `cargo build
+--release` from the root of the repository and get a built LSP in
+`/target/release`.
+
+## How do I use this?
+
+See [`/lsp`](/lsp) for more details, but the TL;DR is:
+
+- If using VS Code, grab the [Fuchsia extension][vscode-ext], which comes with a prebuilt
+  copy, or can be configured to use a custom copy in the extension settings
+
+- Otherwise, follow the appropriate editor configuration for adding language servers to your
+  editor.  For example, for neovim with [nvim-lspconfig][nvim-lspconfig]:
+  
+  ```lua
+  require('lspconfig.configs').fuchsialsp = {
+  	default_config = {
+	  name = 'Fuchsia Language Server',
+	  cmd = {'/path/to/your/built/lsp'},
+	  filetypes = {'fidl', 'cml'},
+	  -- this'll be changing a bit in the future to be clearer
+	  root_dir = require('lspconfig').util.find_git_ancestor,
+	}
+  }
+  require('lspconfig').fuchsialsp.setup {
+    -- your setup here
+  }
+  ```
+
+
+[vscode-ext]: https://fuchsia.dev/fuchsia-src/reference/tools/editors/vscode/fuchsia-ext-install
+[nvim-lspconfig]: https://github.com/neovim/nvim-lspconfig