dependency specification is more flexible + fixing some minor bugs