add ene-to-end test that bid and fail
refactor for better end-to-end test
close connection when window close
add fail AuctionMessageTranslator unittest

test notifiesAuctionClosedWhenCloseMessageReceived
AuctionMessageTranslator test pass

notifiesAuctionClosedWhenCloseMessageReceived pass
adjust Main to use AuctionMessageTranslator
fix incorrect command format
unittest for AuctionMessageTranslator

add test notifiesWhenCurrentPriceMessageReceived
unittest notifiesWhenCurrentPriceMessageReceived pass
adjust FakeAuctionServer for AuctionMessageTranslator
add unittest reportsLostWhenAuctionCloses.

add AuctionSniper
add SniperListener
unittest reportsLostWhenAuctionCloses pass

callback sniperLost when auctionClosed in AuctionSniper
refactor for Main.

let Main implements SniperListener insteadof AuctionEventListener
add unittest bidsHigherAndReportsBiddingWhenNewPriceArrives

add interface Auction
unittest bidsHigherAndReportsBiddingWhenNewPriceArrives pass
use nullAuction for build pass in Main
end-to-end test sniperMakesAHigherBidButLoses pass
add join to Auction
add XMPPAuction
use XMPPAuction in Main