Tighten up new card UX

Also refactored the NewCardView.add* methods to use a ruby-esque args
hash for clarity