Updated JavaCodeParser to create nested namespaces from a package directive.

Now, "package A.B.C;" becomes "namespace A -> namespace B -> namespace C" instead of "namespace A.B.C".
Modified C# parser to use the new ParserContext stack instead of the NamespaceUse object for "namespace A.B.C { }". The parser now directly creates "namespace A -> namespace B -> Namespace C"
Added ending line numbers to help with data archive API.