I managed to solve this by stripping all the extra stuff out of my config and basically reverting back to the sample configuration, making sure to basically leave it as is, with the exception of remote server address, and this wonderful comment
# Push routes to the client to allow it
# to reach other private subnets behind
# the server. Remember that these
# private subnets will also need
# to know to route the OpenVPN client
# address pool (10.8.0.0/255.255.255.0)
# back to the OpenVPN server.
push "route 192.168.0.0 255.255.252.0"
;push "route 192.168.20.0 255.255.255.0"
I may have over complicated things in my first config attempts 🙂