Remove source definition

The source module will be re-defined later.
Support *_test.cc in newsource.sh
Add fragment and fragment_position classes
Replace error_level with category
Replace message with format
Add report class
Add lazy class template
Add shared_lazy class template
Allow shared_future instantiated with incomplete type
Add stream class alias
Add parser function type alias
Merge pull request #141 from magicant/refactor/source

Redefine types for syntax parsing