Add CommandParser abstract class
Remove mSourceLocation from Command

It seems Command should have SourceBuffer::ConstIterator as a pointer to
the corresponding source location. For now we remove SourceLocation from
Command; we will add ConstIterator (or something else) again in the
future.
Move WordParserStub to WordParserTestHelper.hh

WordParserStub is going to be used in more than one test.
WordComponentStub is also moved.
Refactor AssignmentParserImplTest

We now check the value of parsed words, making the tests more readable.

Part of the checkAssignmentResult function is moved to the new function
checkAssignment.

The WordComponentStub class is removed in favor of RawString.
Add test case to AssignmentParserImplTest
Use StringParser to parse variable name in AssignmentParser

This commit is just a refactoring. No test cases added or modified.
Make WordParserStub parse empty word correctly

Empty word should have no word components, rather than an empty
component.
Add SimpleCommandParserImpl template class
Add SimpleCommandParser class