nice cli interface
rearranged lib and specs for better require strategy