jesus, day 3 of #AoC2017 looks bloody difficult

@calvin Definitely looks to require more thought than programming. Math solution for part 1 doesn't look so bad.

@micah I managed to implement Ulam's spiral (jn the least functional way possible) - now I need to implement the damn pathfinding algorithm...

@calvin Nice, I did some math computing the shell layer and offset from the center, but it's no help at all for part 2, where your spiral impl may be.

@micah Looks like I finally have a tolerable-enough equivalent to a non-existent Array2D.findIndex.... time to implement pathfinding I can barely understand the math for!

@calvin Nice. If this is only Day 3, I'm starting to wonder if I have the time to get through these. Getting crazy.