Merge pull request #53 from Teevity/master

[Issue #52] Fixed computation of "aggregated" with resourceGroup and groupBy=Product
Added support for using on demand prices when calculating usage costs for Resource Groups
Added option in ice.properties to choose between ondemand or reserve pricing when calculating Resource Group costs
Added implementation of Weekly Cost Emails
Update README.md
Changed ice option to use modeled costs for resource groups to ice.resourceGroupCost following code review
Merge pull request #54 from oliviervg1/master

Ondemand pricing for Resource Groups + Weekly Email Service
Merge pull request #56 from ma78/patch-1

Update README.md
Make slow tasks non-blocking during initialisation

The tomcat doesn't start until the initialisation for both the reader
and processor complete. This means that no user feedback can be given,
requests just timeout. This commit removes the blocking calls to some
key offenders and does them asynchronously, allowing the tomcat to
start.
Improvement to previous tomcat optimisation.

In the last commit, the ReservationService was started asynchronously,
with the BillingFileProcessor started at an arbitrary time later. This
commit makes the ReservationService synchronous again, but to allow the
tomcat to start quickly it's initialised inside the BilingFileProcessor
rather than the ProcessorConfig.
Stop 500 errors being masked by 404 responses.

When a 500 occurs, grails looks for the errors.gsp view. Because this
doesn't exists the response is returned as a 404, which causes much
confusion.
Changes to ice.js to check if the reader has some data
Changing ice error messages.

 * Handling 500s from the server.
 * Providing custom messages for each error.
Modified error handling and messages for iceStatus
Styling warning banner for partial data
Cosmetic JS improvements and fixed 500 handling
Tidy up and error page changes:

 * Remove layout chrome from error pages
 * Tidy up the URL mappings file
Pulling out UI error message for now.
Pulling out UI error message further
1. Move to aws sdk 1.5.8
2. Fix the download time interval issue when consolidate type is not hourly.
3. Use redervation records' end time that's newly added in aws 1.5.8
4. Handle the case when an instance type's reservation cannot be found.