HopStop is the app you're looking for. I just moved to Brooklyn and was recommended the app by someone who's been here only a few months. It gives ridiculously thorough directions, and has an offline transit map you can use while you're on the subway.