add new directive for checkout, created cart service and restructured project to a be a bit more sane