Dev: print scopes, dagger modules & entry points

* Using reflection to read into Dagger object graph
* Dagger keeps a Map<Inject, Module>. We transform that back into a Map<Module, List<Inject>>
* Using `\u00a0` (non-breaking space) as a first line char, because Logcat hates white spaces
* Using backquotes for last child (you were right @jw, it looks better)
* Splitting the code for "printing a tree" from the one that transforms scopes, modules and injects into nodes.
* Moar tests

```
Mortar Hierarchy:
SCOPE Root
+-MODULE com.example.mortar.model.Chats.Module
| `-INJECT com.example.mortar.model.Chats
`-SCOPE com.example.mortar.core.Main
  +-MODULE com.example.mortar.core.Main.Module
  | `-INJECT com.example.mortar.core.MainView
  +-MODULE com.example.mortar.android.ActionBarModule
  | `-INJECT com.example.mortar.DemoActivity
  `-SCOPE com.example.mortar.screen.ChatListScreen
    `-MODULE com.example.mortar.screen.ChatListScreen.Module
      `-INJECT com.example.mortar.view.ChatListView
```
Merge pull request #43 from square/py/little_tree

Dev: print scopes, dagger modules & entry points