Alternative proposal for grouping exported and local declarations

This is another version of grouping exported and locals declarations (originally proposed as #37).
Implementation notes: 
- exported and local declarations can co-exist within a same symbol (similar to #37)
- exported node has a link to a local symbol
- local symbol is used to check if exports agree on all merged declarations (within one local symbol)
- additional extra check is run on export symbol for functions (to detect duplicate implementation\mismatched ambients) 
```TypeScript
if (hasExport && currentDeclarationHasExport) {
```

Also, add a comment:

```TypeScript
// If this symbol has an export in the current declaration space,
// then make sure that this declaration is consistent in its import behavior.