Dots are spaced one unit apart, horizontally and vertically.  The number of square units enclosed by the polygon is
[asy] for(int a=0; a<4; ++a) { for(int b=0; b<4; ++b) { dot((a,b)); } } draw((0,0)--(0,2)--(1,2)--(2,3)--(2,2)--(3,2)--(3,0)--(2,0)--(2,1)--(1,0)--cycle); [/asy]
$\text{(A)}\ 5 \qquad \text{(B)}\ 6 \qquad \text{(C)}\ 7 \qquad \text{(D)}\ 8 \qquad \text{(E)}\ 9$
Solution 1
We could count the area contributed by each square on the $3 \times 3$ grid:
Top-left: $0$
Top: Triangle with area $\frac{1}{2}$
Top-right: $0$
Left: Square with area $1$
Center: Square with area $1$
Right: Square with area $1$
Bottom-left: Square with area $1$
Bottom: Triangle with area $\frac{1}{2}$
Bottom-right: Square with area $1$
Adding all of these together, we get $6$ which is the same as $\boxed{B}$

Solution 2
By Pick's Theorem, we get the formula, $A=I+\frac{b}{2}-1$ where $I$ is the number of lattice points in the interior and $b$ being the number of lattice points on the boundary. In this problem, we can see that $I=1$ and $B=12$. Substituting gives us $A=1+\frac{12}{2}-1=6$ Thus, the answer is $\boxed{\text{(B) 6}}$

Solution 3
Notice that the extra triangle on the top with area $1$ can be placed (like a jigsaw puzzle) at the bottom of the grid where there is a triangular hole, also with area $1$. This creates a $2*3$ rectangle, with a area of $6$. The answer is $\boxed{\text{(B) 6}}$
~sakshamsethi