Fix Amount#initialize with Float quantity
Add per-customer and default hourly rate
Make quantity a float and fix #items call with empty result
Improve Invoice class

- New properties: date, start_date, end_date
- New Invoice.methods: last_number, next_number
- Comparison of Invoice::Item for equality (so we can do things like
  invoice.items != invoice2.items)