Add mvn project for implementing Blackjack in Java
Add Apache 2.0 License Headers

* Add hint for netbeans license in pom.xml
* Add license header to pom.xml and Blackjack.java
Implement Card class

* Card has rank and suit
* Throw IllegalArgumentException if rank < 1 or rank > 13
* Throw IllegalArgumentException if suit not valid
* Add unit tests to validate constructor arguments
* Add unit tests to validate getters
Replace Suit constants with Suit enum

Using a Suit enum enforces better OO design. It also removes any need
for validating constructor parameter when dealing with suits.
Introduce ICard interface

* Introduce ICard interface to enforce interface driven development
* Card implements ICard
* Card is package-private
CardFactory is responsible for creating cards

* Move argument validation from Card to CardFactory
* Remove unit tests dealing with argument validation from Card
* Add toString(), equals(), hashCode() implementations for Card
Implement all card types and tests
Add toString() and corresponding unit tests

Implement toString() on Card classes for printability
Cards can be deal via Deck and Shoe

* Deck is a container for 52 cards
* Shoe is a container for multiple decks
* Shoe can stop dealing before all cards have run out
* Shoe is responsible for shuffling cards
Hand class implemented

* Responsible for gathering cards
* Computes value of the hand