Merge pull request #25 from cs2103aug2014-w11-4j/create_logic

Created Logic class
Merge remote-tracking branch 'origin/create_logic'
Created Logic class
Merge remote-tracking branch 'origin/master' into search_logic
Merge remote-tracking branch 'origin/master' into search_logic
Add messages in UnsupportedOperationExceptions thrown by iterator
Add JournalController class to support undo/redo actions
Added Search Base On Description

Added Search function base on description, accompanied with test cases
Added Search Base on Date Period

Added Search with Date Period + Testing Unit
Added Search Base On Description

Added Search function base on description, accompanied with test cases
Fix Conflict in Logic Checkout
Code style improvement
Add functions to check if an ID exists/is (in)valid
Code style fix

Renamed offsetIterator in InstanceIterator to follow the code style
Resolve Conflict in LogicTest
Add description for action to be returned when undo/redo
resolve conflict in Logic Class
Let JournalManager support generics like DatabaseManager
Add methods to get size of stacks
Add tests for JournalManager