Typerror: 'vector' not callable
At the last lines you didn't assigned the vector to the attribute dLoc with the = operator, but 'called' it with parentheses instead, as it were a method. Put the = and everything should be fine.

Also, you don't need to add parentheses on the vector. The script with several corrections as follows:

import bge

cont = bge.logic.getCurrentController()
own = cont.owner

# Constants have UPPERCASE identifiers
MAXVEL = 0.5
BRKVEL = 0.05
CRSVEL = 0.005
ACCELL = 0.001

# Sensors
w = cont.sensors['W']
s = cont.sensors['S']
a = cont.sensors['A']
d = cont.sensors['D']
space = cont.sensors['space']

# Actuators
motion = cont.actuators['motion']

## Movement

# Accelerate     
if w.positive:
    own['vel'] += ACCELL
    motion.dLoc = [own['vel'], 0.0, 0.0]
    cont.activate(motion)

if space.positive and own['vel'] &gt; 0 :
    own['vel'] -= BRKVEL
    motion.dLoc = [own['vel'], 0.0, 0.0]
    cont.activate(motion)