CartItem.lineTotal bug and failing tests

Little things but worth having sorted I think :)

- the discount in lineTotal() was being applied incorrectly: 
  ```
  return (cartItem.price - cartItem.discount()) * cartItem.quantity();
  ```
  The discount above is being calculated for the total of all line items,
  therefore applying it to each item independently is incorrect.

  Instead, the discount should be applied to the item subtotal which is the
  total for all line items:
  ```
  return cartItem.subtotal() - cartItem.discount();
  ```

- some of the tests were failing
- added new tests for discount fix
- removed the cart.min.js file which contained 98479857345 instances of the scripts :) Instead just referenced the scripts directly.