Updated usage messages and shortened code significantly