Do not provide inner CONSTANT, Class, Enum, TypeDef and static method.

According to official styleguide, we should not provide inner
CONSTANT, Class, Enum, TypeDef and others. Only top-level Class is enough.

https://google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml?showone=Providing_Dependencies_With_goog.provide#Providing_Dependencies_With_goog.provide

Squashed commit of the following:

commit 5727eeae5f5bc87663a8ac689b828469659fdba3
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sun Nov 9 15:05:48 2014 +0800

    create Parser instance at timing of `beforeEach`

commit 7d9185ab5faff1f9fd504770e7ea8c6113ddaec1
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sun Nov 9 14:44:44 2014 +0800

    refactor

commit ed7dd24bf27260b919492cff3ea6c7ec5a290808
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sun Nov 9 14:25:00 2014 +0800

    pass all tests

commit c5c5ba4d3d2bee113d6122623461df4d3585fa6c
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sat Nov 8 17:41:22 2014 +0800

    implement expected behavior

commit aa23820bf44c58637f47450747c42e40704b58f1
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sat Nov 8 17:24:29 2014 +0800

    add test case to make requirement clear

commit dbf9eca7154625d34247ad8861da08357df3f3e0
Author: Kengo TODA <skypencil@gmail.com>
Date:   Sat Nov 8 17:09:08 2014 +0800

    make a new file to handle dependencies