grimwire/local — pull request #42 by pfraze (2013-04-22 22:18:06+00:00)
Title: Unify the Local namespace

When I started on Local, it wasn't clear what all was needed -- originally, it was just the [LinkJS](https://github.com/pfraze/linkjs) project. Then I had to make a Worker manager: [MyHouse](https://github.com/pfraze/myhouse). Then I had to create client behaviors: [CommonClient](https://github.com/pfraze/common-client). Not to mention the [promises lib](https://github.com/pfraze/promises) and the couple of prototypes that Local added under the `Environment` namespace. So now, here's a quick overview of what's getting used in a Local deployment:

```javascript
Local.Promise // yeah, the ONE thing under the Local namespace. Brilliant.
Link.dispatch()
Link.subscribe()
Link.Navigator
Link.Router
Link.Responder
Link.Headerer // it...helps you build response headers
Environment.addServer()
Environment.getClient()

// and, more behind the scenes:
CommonClient.listen()
MyHouse.Sandbox
```

So that's kind of all over the place. In Local 0.2.0, I had them each in submodules. In Local 0.3.0, only the promises are embedded. I'm thinking I should take the opportunity (while I can) to unify the namespace, like so:

```javascript
local.Promise
local.http.dispatch()
local.http.subscribe()
local.http.Navigator
local.http.Router
local.http.Responder
local.http.Headerer
local.env.addServer()
local.env.getClient()
local.client.listen()
local.Worker
```