Improve code documentation
Sort methods
Separate Scope semantics from Declaration