got a first draft working with the normal cases. the odd ones are still failing tho
refactor into object for readability and memoization
make sure that we're using a square grid and don't fill in once we've reached the input value. for odd inputs, accept behaviour since requirements didn't specify and appears valid.
make sure that negative input won't crash us
package like a real program with a main and everything
don't subject people to my lack of sophisticated formatting.