Moved files and packages to match new desired package structure. The new
package structure places all core models into one package (the
com.vimofthevine.underbudget.core package). File utilities will
be in another package, and analysis utilities will be in their own
package. This means that application versions, such as the CLI, GUI,
or mobile versions, will only have dependencies on those three packages
(and any applicable sub-packages).

Updated package declaration for budgeting periods

Updated budgeting periods. As budgeting periods are based on dates,
the SimpleDate utility class was added. Both the SimpleDate and
BudgetingPeriod classes use the Simple XML Framework for serialization
to XML.

Added currency package.

Added task progress package

Added category and generic estimate behaviors

Added Owed, Specific, and Unbudgeted behaviors and unit tests.
Made sure all files had licensing comments.

Added balance impacts and unit tests.

Added estimate classes

Added assignment rules and unit tests.

Updated budget model

Brought ledger and report packages up to date

Added Simple XML serialization utilities and unit tests

Added transaction importers and unit tests

Removed irrelevant unit tests

Updated budget/template file models

Added Google Guava 12.0 to libraries

Added JCommander to libraries

Making sure JCommander is set to a tag (1.26)
Starting with basic window functionality

Added content and status views

Make content specification based on enum instead of strings

Added SwingX 1.6.3 to libraries
Initial estimate progress tree

Improved estimate progress view, started working on selection listeners.

More stuff for the estimate tree

Created inter-session event types

Created presentation models

Prepared estimate tree models and views

Added support to estimate tree-table view model for inter-session events (estimate selected, modified, added, removed)

Modified tree view's response to estimate additions/removals to fire the correct events on the tree-table model

Completed views and view models for the estimate domain

Added missing Subscribe annotations and registered document models to receive document change events

Fixed layout issue with estimate detail view. Improved look of estimate progress bar

Added custom GUI widgets to version control

Updated to swingx 1.6.4

Fixed synchronization issues between views

Fixed estimated amount field to properly handle input and updating of estimate.

Renamed estimate events to be more consistent and some other small clean up things

Moved menu action definitions into enumeration type

Updated window and window model

Updated estimate deletion action to not delete the root estimate
Renamed swing package

Renamed core package

Removed old source

Added core package to version control

Removed old unit test source
Began working on session management

Window menu now updates to allow selection of all open sessions

Window title and display now display correctly if no more sessions are open

Added passing of events to session bus

Added event to open about dialog

Removed old content package

Added prompt to save dirty sessions when shutting down

Started using actual session content views

Moved estimate events to their own package
Made tree synchronization a little more robust
Made CurrencyFactory an interface, rather than a concrete class

Updated references to renamed/moved classes

Removed creation of views from main class
Updated estimate views and models to use estimate definition for obtaining fields

Updated estimate field models to use correct API

Added to SimpleDate API to be able to convert from one impl to another
Added a listener to intercept dead events and inform the user that the feature is unimplemented

Created SessionState to track unsaved changes to budgets

Began adding stuff needed to make save actions work

Moved assignment rule events to their own package
Added rules list view (and reordering works!)

Fixed issue with split pane initializing with hidden tree

Moved menu action model creation into enum. This means that
the menu model does not need to be updated for any changes
to the menu action model definitions (additional fields).

Added icons to menu actions

Added icons to all menu and toolbar items

Added assignment rule detail view

Apply changes now is enabled when conditions are modified

Improved display of compound conditions

Added associated-rules view for estimates
Added imported transactions list and detail view

Added default assignment objects

Added selection of assigning rule/assigned estimate to transaction selection

Added assigned-transactions view

Added qualified transactions view to assignment rules
Created analysis results summary view

Updated import to reflect changed location of ActualFigure(s)

Added analysis results view
Started working on edit-budget dialog

Added literal month period form to edit-budget dialog

Added literal month budgeting period to core

Added paydate month period form

Added custom and paydate-month periods to core

Moved analysis summary classes to summary package

Added name and period to results view. Also fixed summary view to update on modification
Made custom currency field, which fixed weird issues with parsing/committing values from the formatters

Removed currency factory from budget definition

Updated to reflect removal of currency factory from budget definition
First step towards transaction import source selection

Added icon to application window

Created DateRange interface to define contains().

BudgetingPeriod no longer defines the contains() method,
but rather extends the DateRange interface. TransactionSource
uses a given DateRange to filter transactions.

Added GnuCash XML file transaction source

Added GnuCash XML transaction source selection

Fixed glitch with edit-budget dialog being displayed off-center.
Added wizard for selecting budget XML fils
Refactored Currency into CashCommodity

Updated to use CashCommodity instead of Currency

Introduced CurrencyCalculator, limiting access to the default cash commodity implementation

Modified to use CurrencyCalculator
Fixed save-as functionality
Added calculator to getProgress/getImpact

Fixed bug with importing currencies

Fixed bug with comparing decimal numbers

Added currency calculator usage to estimate trees

Added progress classes to core, as well as a category type.

Added log statements to help debug issue with assignment.

Modified GnuCash XML source to re-read from file

Upgraded to Simple XML Framework 1.6.6

Improved display of unevaluated impacts/progress

Added balance impacts to core, improved progress

Added default condition logic to core

Added custom budgeting period form
Merge branch 'feature/gui' into develop