Focalpoint

(note: this PR is dependent on #17 and #20)
Shouldn't we return `Focalpoint{0.5, 0.5}` if either `ParseFloat` calls fail?